With a Canadian passport you don't need any visas for HK.
Three airlines fly HKG to CKG - Air China, Dragonair, HK Express. (The first two codeshare on each other's services.)
I would never recommend trying to buy tickets on the fly in transit somewhere - if you have time to stay in HK for a day or two if necessary (and the means to do so - if you need a hotel it can be expensive) then maybe wait until you get here, but otherwise I'd try to get something in advance.
http://www.hongkongexpress.com
http://www.dragonair.com