Next time before we give up completely let another player (for example me) to host the game. It often helps.
Also it would be nice to inform all the players you are off for good guys, me and KenG waited for you on the metaserver.
Concerning the metaserver - you leave it the moment you join the MP game, as from then you are connected to the hosting player PC (the real server now). So the metaserver is there only for the initial chat and handshaking and its not responsible for any further transmissions.
Concerning the Steam - its true that it can somehow affect the connection, as can just any other network using application. But I havent found any relevant complains about the Steam concerning the issue, so I wouldnt mark it as an suspect.
Most of the network problems are caused by
a) Low quality connection of one or more of the clients or the server itself, what can cause the desync. This can be tested somehow by reviewing the ping statistics, when available.
b) Low outgoing or "upload" bandwidth of the server, so it cant send all the data at a reasonable speed. This can be a real problem when transfering the savegame file,as it has size of tens megabytes. Can be partially solved by distributing the file by mail or as an attachment here on the forums.
bb) Edit: also the problem with the savegame distribution can be moderated somewhat if the players join the game one at a time, waiting for the previous player until he receives the whole savegame file (100%). For this we of course need a chatroom (Steam?) so the players can be invited to join as needed.