There's no doubt about that, and I'm fairly certain that the pressure for the two year rule came from countries like Austria and Switzerland who are in that second tier of nations a step below the big guns but comfortably ahead of the countries below them. They go to the WC, the Olympics and they get to play with the big boys, and they don't want that challenged by GB, Italy or Netherlands putting together a team full of canucks with ancestral passports.
I understand that, and I wouldn't want to see a GB team made up entirely of Canadians.
But I don't see how it's fair, or right, that someone like Cook should be prevented from representing GB. He's a British citizen, his family are all from this country, he lived here himself for ten years, he's never played for anyone else. Actually, forget 'fair or right' for a minute - I just don't see how it has any legal basis.
Lots of other sports (football, rugby) don't even ask for citizenship, simply having a grandparent from that country is enough. In comparison to that, asking that citizenship is enough to qualify is not a big deal.
A legal challenge to the ruling would be unlikely to even go to court, the IIHF would back down.