With the current packet switched network, when too many people try to call Mexico City at the same time, what will happen instead is that far more connections will be made, but they will not be reliable. ... when it's waaay too many, then no one will get a usable connection at all.
A packet-switched network is great for lots of applications but one can certainly argue that telephone service is not one of them.
Actually, packet switched networks work just fine for this IF they have a "reserved bandwidth" connection-emulation feature. In return for being limited in the number and size of the packets, and having asked first, the packets of the call get to "go to the front of the line", which means they aren't dropped and have little variation in transit time (jitter). The high-bandwidth services that speed up until they hit a bottleneck and back off, dividing all available bandwidth among themselves, then find that "all available bandwidth" is just a little smaller. That way both types of service play together JUST FINE.
But that means treating some packets different than others, which in turn means that "net neutrality" mandates, in a naive form, ban them, leaving the phone calls running in the "best effort" manner you describe.
It also means that the "calls" get a higher priority on the bandwidth, and lock up some for their own use. This makes their handling more valuable, and thus more costly. If that cost is not passed on, the result would be that other services would be re-written to "cheat", improving their own performance by opening a bunch of "calls" to reserve a bunch of bandwidth - losing, for everybody else, the opportunistic maximization of the use of the transport and drastically reducing performance for everybody when essentially everybody is playing the same game to get back on a level playing field.
So the practical and equitable solution is to provide some minimum amount of right-to-reserve-bandwidth - like enough for a call or two - in the flat rate and/or bill excess use at a substantially higher rate (as well as limiting the amount available for reservation and not guaranteeing reservations will be accepted once it's all in use. Then the users can chose (monthly and/or on a call-by-call basis) whether to pay extra for reserved bandwidth, high-quality calls, or save money by taking their chances on call quality using best-effort routing.