What you are not getting, is that to host the World Championship, you actually have to apply for it. Novel concept, I know
Every nation is free to declare their interest in hosting the tournament. Canada has done so once, and they got it right away. The USA has never applied to host the tournament. If you have a problem with neither of the North American nations having hosted the tournament all that often, blame the ones who are responsible for that, your federations. The IIHF cannot force the WCH onto a country.
And what exactly is "themselves"?
The IIHF is the combination of all the national federations, including the ones from the USA and Canada. It is
not a single entity. As such it is completely incapable of keeping anything for itself. The idea that somehow "Europe" is to be treated as one unit is such a big joke that it is not even worth commenting on.