OP, when you make absolute statements like "Canada is better", "I'm sure many Mexicans would agree with me", "I think I have a fairly objective opinion on what constitutes a better country", that tells me that the main problem is your attitude. When I travel to foreign country, one of my main motivations is to experience and observe a different culture. If you are constantly comparing things to home, you'll never be satisfied.
Why did you decide to go to Latin America in the first place? What were you expecting? Why have you stayed so long given your litany of complaints? As seeker333 pointed out, you have frequently complained on this forum about a lot of different things.