US taxes aren’t the only reason. To be classified as a U.S.-flagged ship, there is certain criterion:
The cruise ship must have been built, or born, in a U.S. shipyard.
The cruise ship must be staffed by U.S. crewmembers and paid based on U.S. minimum wage laws.
The cruise ship must be owned by a U.S. company. It must also be registered in the U.S.
Most US shipyards don't build cruise ships, although they probably could if they so chose. They build military ships or smaller ships like yachts. Since there are no shipyards building cruise ships, there can be no U.S.-flagged cruise ships.