Just a quick note, a public game server that is being used 24/7 for a month can generate 300GB of traffic in a month in worst case scenerios.
As for datatransfer, if each player consumes 4kB/sec (server uploading to player), and you have 16 players that equals 64KB/sec of traffic. Most internet connections are not able to upload at 64KB/sec and the one that are cost quite a bit. In canada, you can get a DSL line that can upload at that bitrate (640kbit or ~70-80KB) for around $80/month CAN. Transfer $80 into USD = about 60-65USD. A 16 player server can cost 65.95USD at Wojjie Networks, which can cover the cost of that dsl line, but you also need to setup a computer that will be on 24/7 and that is able to handle that amount of traffic.
MTA does not take that much CPU, but take a bit more bandwidth. As for Counter-Strike 16 players can spike up to 80% cpu usage on a P4 2.0ghz when at capacity.
As for private servers costing less, that is because there is an assumption made that generally the server will not be used all the time. As for a public server, it may end up being full 24/7.
I hope all this clarifies why game servers cost as much as they do.