They equate "America" with "USA". "Canada", "America", and "Mexico" are located in "North America". And, BTW, "Mexico" is also in "Central America".
It's a cultural/linguistic norm, not a programming problem. Don't try to reason it out as rigorous logic.
I do not. Maybe that would be different if I traveled to the US often. But despite some of our similarities I see Canada as distinctly Canada and I do not live in America (America’s Hat and Canada’s Pants jokes aside).