I think it makes sense to exchange money only in Jamaica. If you do it in Canada, you are buying a FOREIGN currency and it is more expensive. If you do it in Negril, they are buying a FOREIGN currency from you.