I don't know Monterrey, but there are a lot of great places in Mexico. Because of the mountains, Mexico has a lot of different climates. Most of them are warm, many are dry, but if you go high enough up some mountains you can find snow. You can go to Mexico for food tourism, IMO the best food in the world. There's also cultural tourism, visiting ancient ruins, or visiting native groups. And of course, beaches, so many lovely beaches.
As for Canada, Montreal is a nice modern city where you can get by in English. Quebec is a more scenic city, but mostly French-only. This time of the year Canada has beautiful trees and it isn't cold yet. (In fact, right now it's high 20s in the day, which is wierd). Vancouver is a fun big city. Victoria is another choice for a smaller and more scenic city on the pacific coast. For museums, art galleries, bike trails, decent hiking nearby, etc. there's also Ottawa. Toronto is a pretty well-known quantity.