Canada as well, Sweden no so much but not only best on best LOL, and I really think Germany also could compete best on best, it's not likely that they win the tournament but in a single eliminiation game they could win against any team and the same applies for Switzerland
Apart from the outlier in 2015 where Canada was just a steamroller, the games between Canada and Switzerland always seem to finish 3-2 most times lol, 6 of the last 9 meetings actually.
2010 Olympics - Canada 3, Switzerland 2 (SO)
2010 IIHF WC - Canada 1, Switzerland 4
2011 IIHF WC - Canada 4, Switzerland 3 (OT)
2012 IIHF WC - Canada 3, Switzerland 2
2013 IIHF WC - Canada 2, Switzerland 3 (SO)
2015 IIHF WC - Canada 7, Switzerland 2
2017 IIHF WC - Canada 2, Switzerland 3 (OT)
2018 IIHF WC - Canada 2, Switzerland 3
2019 IIHF WC - Canada 3, Switzerland 2 (OT)