Generalizations are never 100% complete (by definition). But so much poverty and corruption, and so much desperate migration, sustained for such a long time (decades) is a picture of overall failure.
Mexico has the fewest excuses. It is perfectly positioned in the middle of the earth, with coasts on both the Atlantic and Pacific, and with abundant resources. They could be an economic _powerhouse_, with trade relations with the entire world (thing manufacturing, shipping, ...) if they could get it together (and I hope they do). But, history seems to show that isn't likely for a long time, if ever.
Yet you decided it was a good idea to call out "South American countries". It's not too late to admit you made a mistake, you know.
At this point you don't even know (nor seem to care) if you're arguing specifically about Mexico, all of South America or what.
Canada and the US being considered the same doesn't bide well for the quality of your generalizations, either.
The US and Canada are not the same just because they both have functioning economies.
Even worse, "South American countries" in general don't have their populace "desperately trying to flee". Some might, many don't. The phrase "South American countries", as if Brazil and Argentina for example were a single entity, is so stupid it boggles the mind.
Here's my suggestion to you: educate yourself, learn about other countries, and stop making blanket, incorrect and offensive statements.