I was in charge of a big supply database server on an aircraft carrier, and every time we changed timezones I had to update the timezone on the server. Heading from East to West was no problem, but when we went from West to East I had to shut the server down for an hour when changing timezones, to prevent timestamps from overlapping.
Admittedly, this was partially due to bad programming, but it's just a small real-world example of problems caused by the existence of timezones.
Given that servers frequently changing timezones can be sorted out by a modicum of thought by programmers and is actually pretty rare in the grand scheme of things, I don't think it's too heavy a price to pay.
Or UNIX time. While not monotonically increasing (it has issues with UTC leap seconds), it's pretty good.