Game froze will report that the player timed out, not that they manually disconnected. Clicking the "Disconnect" button is the only way to make the game say "Disconnected by user".
Hud, Mumble, Addons, item server: I suppose there are times when restarting the game is helpful to get it to refresh itself and work properly. So, therefore, I amend my suggestion to only apply after the lobby has been started for [let's say] 5 minutes. How does that sound?