There's a reasonable explanation for this. The who's online module checks in the #__session table which session there are and for which user there are sessions. If there is a session for a user than he will be displayed online.
When a user pushes the logout button the session will be distroyed and he also won't show up in the who's online module anymore. But when he just closes his browsers then his session is still in the database and will be deleted after a specified amount of time. You can set this session lifetime in your joomla global config in the server tab.
So the who's online module doesn't works perfect when people doesn't use the logout button to log themselves out. But when they use that button than the login module works just fine.
Hope my story is clear. And maybe could someone make a solution. Like if somecloses his browser that his session will automatically deleted or something like that. Or just shorten your session lifetime. But say if you set the session lifetime too 60 seconds and a user is on your site but inactive for 60 seconds he's automatically logged out then.
Grz
Machiel