good questions i am also waiting for their answers
I've been working in a Bank so i might be able to help.
Firstly, If you make a transaction which automatically changes the currency of your money, you will lose out as they will give you worse rates than you would get if you had the money exchanged before hand.
Best option: get the money exchanged before hand through a money changer on the rate you prefer.
Secondly, you can only open up a USD account in Pakistan not a CAD.
Thirdly, USD and CAD on their own don't fluctuate so much. So a transfer of money between the two will not cost you as would the first option. Meaning: sending PKR from Pakistan to CAD account in Canada, you'll lose money based on the exchange rate applied by the bank in Canada which will be horrible.
example: a customer sent PKR to Australia in an AUD account. The exchange rate of the open market in Pakistan was 97 Rs/AUD something, but the money reached with an exchange rate of 107 PKR/AUD.
See, you can get hit really bad if you let the Banks do the changing for you. Whatever you're doing, don't do it in PKR, do it either in CAD or USD. The CAD is linked to USD, so if USD increases, CAD will increase as well.
Plus, the USD was really high a few days back, its going to fall or expected to fall because of huge payments promised to Pakistan of more than a billion $'s. so when it goes down, im planning on buying it.
Hope i helped. Any other queries, ill ask from my seniors and communicate their replies.