Interestingly, similar laws come in to play with cruise ships - non-US-flagged passenger ships that depart from a US port aren't allowed to return to a US port without first stopping at a foreign port. Almost all American cruise ships are flagged in countries outside of the US. The practical effect of this is that the many cruises that travel between the west coast and Alaska all have to stop over in Canada before they can return to the west coast, which is a major driver of tourism to Victoria, BC - since that happens to be the largest port city between Alaska and the mainland US.