In the Overwaitea supermarket here in Prince George, British Columbia they have changed the signs that tell you what items are to be found in each aisle. One aisle now contains Indo-Canadian Food. It used to be Indian Food. The new sign is not an improvement. The relevant section contains food of the sort typically eaten in India, most or all of it imported from India. For such food the the label Indian Food is quite accurate. Indo-Canadian Food is inaccurate. It would be appropriate for food characteristic of Canadians of Indian origin, if such a thing exists.
Why the peculiar new sign? I'm not sure, but a couple of possibilities come to mind. First, Indian is ambiguous, since it can refer both to South Asian Indians and American Indians. In practice, though, this isn't likely to be the motivation for changing the sign. Canadian supermarkets rarely if ever carry foods characteristic of American Indians. I doubt that anyone has ever been disappointed in not finding dried salmon, moosemeat, or bear grease in the Indian Food section. The second, and more likely, possibility is that this is misguided political correctness. Indo-Canadian is, reasonably, preferred to Indian as the designation for Canadians of Indian origin or descent because it makes clear that, whatever their origin, they are nonetheless Canadians, whereas Indian suggests, by omission, that they are not really Canadian. My guess is that the Overwaitea people have mistakenly extended this designation from people to food. It is quite possible that most such food is purchased by Indo-Canadians, but the food is nonetheless Indian, not Indo-Canadian.