The last.fm integration is incorrect. Tracks are scrobbled almost immediately upon play. You can play 5 seconds of each track on an album and it will show you have scrobbled the entire album.
From the last.fm API docs (http://www.last.fm/api/scrobbling#when- ... a-scrobble)
When is a scrobble a scrobble?
A track should only be scrobbled when the following conditions have been met:
The track must be longer than 30 seconds.
And the track has been played for at least half its duration, or for 4 minutes (whichever occurs earlier.)
As soon as these conditions have been met, the scrobble request may be sent at any time. It is often most convenient to send a scrobble request when a track has finished playing.
The iSub iOS app does not suffer from this issue. It updates the "Now Playing" and only scrobbles after playback meets the criteria.