I actually have great experience with my local Shoppers Drug Mart. It really depends on the photographer.

We always go to the Shoppers in the Bramalea City Centre, the woman has been taking our passport photos since 2008. She's even good with photos for my US documents. She reads the form carefully and always check to make sure they turn out perfect. I have oily face, she knew right away it won't cut it. Told me to go to the cosmetic department to get some powder or blotting paper samples. She doesn't mind taking and printing multiple times. Always check very carefully before letting me go.

On the other hand, my brothers had tried Blacks, which was $16.99 at the time and supposedly more professional. It was twice rejected. They refused to refund, just kept offering retakes. This is why they closed down.

Note that passport office don't take your photos probably because it is fundamentally different than other government agency because it is for citizens and not necessarily residents. They have to make it easy for expats.