My daughter and I are actually both travelling. We hold South African Passports and do have valid 10 year American visas, issued in March 2011. We are going on an Alasla cruise (MS Zuiderdam) from Vancouver and back to Vancouver.
The following was copied from the Canadian visa Web page, but the agents in SA says that we must get multiple entry visas.
From the list, select the type of visa you are applying for:
? Single Entry: allows you to enter Canada only once during the validity of the visa.
Note: This visa may also be used for repeated entries into Canada from the USA or St. Pierre and Miquelon provided you do not enter any other country. Such entries must occur within the time validated for your stay in Canada.
? Multiple Entry: allows you to seek entry into Canada from any country as often as necessary during the validity of the visa.
? Transit Visa: is required for persons travelling through Canada for less than 48 hours on their way to another country.
Note: To obtain a transit visa you must provide specific evidence of your travel itinerary