thanks for your useful plugin!
In my install the two compared values of $topicLastActiveTime and $lastVisitTime work with different timezones. $topicLastActiveTime seems to use GMT, $lastVisitTime uses local server timezone (2 hours later in my case). So it doesn't show the unread posts correctly.
I think this can't be changed without hardcoding your plugin...
Would be nice if you could take a look into that.