it would not take long time to get US green card comparing to
get Canada citizenship. The purpose of a lot of persons immigrated
to Canada is to go to US. Why not go there directly. And even after
you get your Canada citizenship, if you want to apply US green card,
you still need H-1B.