The 33-year-old crew member plunged into the sea from the deck of the Norwegian Getaway around 28 miles north west of Pinar del Rio, Cuba, on Saturday.
US Coast Guard ships spent hours attempting to locate the man, but called off the search after covering more than 1,600 square miles to no avail.
“We saw the cruise ship made a U-turn and started heading back we noticed that the crew members were using binoculars trying to find the crewmember in the ocean,” passenger Eddy Lowinger told CBS Miami.
However, on Sunday, a cabin steward from the Carnival Glory, a cruise ship following a similar path to the Getaway, spotted the man in the water waving for help.
He is thought to have been dragged several miles from his ship’s course and was found some 26 miles outside the coast guard’s search area.
Crews scrambled a lifeboat to rescue the man, who is now being treated by the ship’s medical team and is said to be in a stable condition.
“This is nothing short of miraculous,” said Christine Duffy, president of Carnival Cruise Line.
“Kudos to the Carnival Glory team for this amazing effort to rescue a fellow seafarer.”
The unlikely rescue has come as a surprise to many who had assumed the crew member, understood to be a Filipino national, had not survived the ordeal.
Local news outlets reported Norwegian Cruise Line, which operates the ship, had already sent its condolences to the man’s family.
Norweigian Getaway returned to Miami following an eight-day cruise on Sunday.