I would like any form of best-on-best hockey provided that there aren't any gimmick teams.
National teams from non-traditional hockey powerhouses have upset favourites in best-on-best tourneys before (e.g. Switzerland, Belarus) so mocking their participation is insulting.
I do think the Olympics is better for a few reasons:
1. There is larger exposure to fans who won't follow a World Cup/Canada Cup.
2. I think there really is Olympic team camaraderie where you saw the Mens' teams attend the Women's teams finals and vice versa, and the idea of them all living in the Village together (I know some teams don't). There's pressure to deliver a medal, not just for yourself, but for all of the other athletes on the larger Olympic team, and that's a good thing.
3. It takes place in the middle of the season so presumably the players are in peak condition. I know there are injuries due to the ongoing season, and injuries at the event can potentially hamper your chances in the NHL (e.g. Hasek in 2006, Tavares in 2016) but overall I think it's a net benefit if it only happens once every 4 years.
As has often been suggested, a two-year cycle of World Cups / Olympics would be preferable IMO - with the former taking place in the summer and the latter in the middle of the season.
1. I would alter the format of the World Cup (8 teams, 12 teams? to be debated) and try and retain the 3 game format of the final, which is unique and different from other tournaments.
2. I would go out of my way to host it entirely in Europe initially to build its credibility as a tournament and then rotate. Given that the World Championships are largely European, I would propose US/Can/Europe as the standard rotation.
3. Again, no gimmick teams. Pick the top teams based on IIHF ranking. I don't think you can have true competition with made up teams. With club teams, you build that desire over the weeks and months of the season. In the absence of that, you need nationalism or some other compelling factor.