I still think the airlines based in Canada are the way to go based on program features. However, Canadian Airline's financial situation has been the problem. If you are using up your miles fairly quickly then it is OK. If not, then they become a liability unless you believe the company is invincible.
CP and AA upgrades and awards seem virtually interchangeable plus you get free lounge access etc. as a CP elite. Not quite as good as AC's program in the Star Alliance but an impressive one nonetheless.