From my observation, I have seen a lot of Canadian students fall in despair because they do not have American citizenship or US Green card. After they do all their basic science classes and clinical clerkships they realize that being a legal US resident would give them an upper hand. All residency programs will choose American medical graduates than any other, and then they’ll look at non-American graduates that already has US citizenship or a green card. Sponsoring J-1 visas require a lot of paperwork and fees and most residency programs will do their best avoid that by avoiding applicants that need it.
Unless you score extremely high on the USMLE tests, or have inside connection to the residency director, you will have a hard time getting a residency if you are a Canadian citizen. The Caribbean medical schools were initially created for US citizens who couldn’t get a seat at a US medical school.
If you are a Canadian citizen, I strongly recommend you try to get into a Canadian or a US medical school. If you are already in a Caribbean medical school, then the only option is to find a way to get a US green card or a US citizenship. I have seen one medical student marry a US citizen (not a good idea) in order achieve that, but I’m sure there are many couples who did that. If you do marry a US citizen, you can tell your US citizen partner that your country can give free healthcare since both of you can benefit (JOKE!) =D.