Everything you say is true. My point is different. Even under the best of circumstances, when those two guys leave at 6:00, it's annoying to the other players, regardless of whether they were scheduled to do so. And even moreso if they're ahead.Let me try and offer an example that's more concrete.
Say I schedule a game from 3-11 pm. I have 9 players say they are interested. But two will have to leave at 6pm, and another at 6:30, they are courteous enoguh to tell the host and I can figure the game is probably still viable 6 handed for the rest of the night with the other players committing. If the game happens to break at 9:30 or 10 instead of 11, I am not going to cry about it either.
So say then someone that didn't announce suddenly decides to leave at 6:15 (hit and run on a big pot) and another guy busts out at 6:45. (Only brought one buy-in.) Those two players are being rude to the four players that expected a 6 handed game to at least a few more hours, imo.
If all these players made their intentions known to the host, in the first place. If I knew we only had four players after 6:45 I could have checked around to see if everyone was cool breaking at 7 or deciding to call off the game, either way enables the other players to make other plans if the game isn't as viable as one would assume a game with nine players to be.
I get emergencies happen, and I am good with leeway if you played 70-80% of the scheduled time and the game breaks a little early. But I think in the circumstances of the two players above, they owed more courtesy to the host and the other players that committed to being there too.
And to the folks who respond, "So I shouldn't go to a game if I don't want to stay until the end?" My response is, why not stay until the end? That's what the majority of people going to a home game do. Commit to the game! Have an extra coffee tomorrow.