I think it really depends on the context. To use your country and hockey for example, let's say
Brock Radunske, born in Canada, played in Canada and drafted by an NHL team has his pro opportunities in North America and Europe go belly up but, instead of taking his talent to Halla in the Asia Ice Hockey League, goes to the China Dragons.
He lives there like he did in South Korea, plays for years, makes an effort to learn the language and gains citizenship. His family lives there and it's pretty much home. He never played at any high level for Canada in international play. I'd have no problem with him representing China at hockey, and he seems basically no different that any immigrant going to a country. Once they get citizenship, they should have the same rights as anyone else there, including representing that country.
Now if Brock bounced between China and Canada in the offseason, made no effort to learn the language or culture, and seemed to be only taking the job because he couldn't cut it in Canada and there was no sense of national pride for his new country, that'd be a different story for me.
As far as having roots goes, sure it looks weird when you see a bunch of Canadian names on Italian jerseys (and it'd look even weirder to have a bunch of white guys suiting up for China and barking plays/calling for passes in English) but I think it's kinda xenophobic to treat someone differently because they originated from a different country. It should be about citizenship and if there's an attempt at becoming part of the culture.