Well, where else are you going to put games in Canada? Toronto, Vancouver, and Montreal make the most sense. You could make an argument for Calgary. But beyond that? Not in Winnipeg. Or Ottawa. Or Regina. Probably not Edmonton. Canada has a limited selection of suitable sites.
As for Mexico, I'm sure there are other cities that could host besides Mexico City, but Mexico City is best suited for it. Other cities would probably require more infrastructure investment first, though. Brazil spent boatloads on their World Cup, and it seems like a massive waste now. I'm sure Mexico will pony up the money to get it done, but they can't host in too many cities, the cost would be too high.
Brazil hosted 32 teams in 12 different cities. Assuming that ratio holds true for a North America World Cup, we'd be looking at about 18 cities for the presumed 48 teams in the 2026 World Cup. I bet you'd see something like 3 cities in Canada, 3 cities in Mexico, and 12 cities in the U.S. host. Maybe Seattle, San Fran, L.A., Phoenix, Dallas, Kansas City, Chicago, Atlanta, New York, Boston, Washington D.C., and Miami? Other strong possibilities would be Philadelphia and Denver. They all have American football stadiums, which would be necessary for the World Cup crowds, and this selection of cities would pretty evenly spread it out across the country.