I think the smaller size of electoral constituencies in Canada also allows immigrants (often representing ethnic enclaves) to more easily get elected.
That's a good point. I don't know much about the sizes of electoral constituencies in countries with similarly high foreign-born populations, like Australia, but think I remember reading some study that claimed Canada was the country in the world with the foreign-born political representation most closely matching the proportion of the foreign born in the general public (can't remember though if it was with MPs or other politicians more broadly).
Now naturally, there are some reasons why the foreign-born would be underrepresented politically (eg. if a country is 20% foreign born, you don't necessarily expect 20% of politicians to be foreign-born) if not simply due to varying levels of Canadian experience and time spent in the country, and you wouldn't expect say, a 60-year old guy who became a citizen just a year ago to suddenly start going for a career in politics. So, the pool would be limited to those with at least a good amount of experience in Canada (and probably more likely those that immigrated young). Then you probably have factors like cultural differences and propensity to pick a career in politics over other paths for some foreign-born cultural/ethnic groups.
So, it's hard to tell whether or not the main barriers to a foreign-born Canadian being elected into positions of office (whether more locally or up to PM) are that fewer foreign-born are eligible to or choose to go into politics to begin with, or if it's harder for them to get into higher level positions (often, in diverse countries, it's easier to find foreign-born politicians at very local, and regional, especially in the largest, most diverse cities, but less so national levels).
Then there's the issue of whether the attitudes or views of the public at large have an issue with how electable an immigrant could be. A foreign-born politician might be much more prone to being attacked by rivals as not as loyal to the nation or secretly favouring the birthplace more than Canada, but I'd wager it wouldn't be as big of a deal as it is stateside (where one can get strong knee-jerk reactions from some of the populace from using anything "foreign" as an insult, like Mitt Romney and John Kerry being criticized for speaking French, or make ridiculous "birtherism" accusations out of the blue).
I think though, by now, foreign birth for a politician in and of itself isn't a bit deal to the majority if he/she is perceived to do a good job governing (Yeah, I know there are those surveys I hear about how X % of the population will not vote for a politician belonging to demographic Y or whatever, though I think those are done more in the States for discussing a Presidential candidate). Obviously, a very recent immigrant who arrived in Canada too late in his/her career might be seen as too "foreign" but I think someone who came as a kid, who spoke Canadian French or English is often indistinguishable from native-born in any case. Growing up in Toronto, if someone spoke fluent Canadian English, and was at least living here long enough to be familiar with the city, I pretty much assumed they were "from here" (sure some might have immigrated as a kid or others could have left Canada for part of their life and spent a lot of their life abroad, but I wouldn't have seen them as "foreign").