Unexpected rain and inadequate flight path monitoring caused a WestJet Boeing 737-800 to drift off course and descend to only 39ft above water during approach to Saint Martin in 2017, says Canada's Transportation Safety Board (TSB).
Low visibility runway lighting also played a role, the TSB says.
The incident, which the TSB calls a "risk of collision with terrain", involved WestJet flight 2652, a flight from Toronto to Saint Martin's Princess Juliana International airport on 7 March of that year.
"The sudden and unexpected poor visibility during the final approach increased the flight crew's visual workload and led to inadequate altitude monitoring," says the TSB. "The crew did not notice that the aircraft had descended below the normal angle of descent… until the enhanced ground proximity warning system issued an alert."
Air traffic controllers cleared the aircraft to land when it was 4.5nm (8.3km) from the runway, and the aircraft descended at a rate of 700-800ft per minute (213-244m per minute), says the TSB's final incident report.
Then, after the 737's pilots saw a rain shower to their left, the aircraft's descent rate increased to 1,150ft per minute and the aircraft deviated below the standard approach path.
After passing through 700ft altitude, the first officer, who was flying the aircraft, rolled the 737 left because he thought a hotel building was the airport.
"The features of a hotel located to the left of the runway, such as its colour, shape and location, made it more conspicuous than the runway environment and led the crew to misidentify it as the runway," says the report.
The TSB notes that Princess Juliana airport's runway lights and visual guidance system lights had been set to "low intensity" at the time.
As a consequence, the 737 deviated 250ft left of the proper approach. It then entered the rain shower, where visibility reduced further.
When 1nm from the runway the aircraft exited the rain shower and visibility improved.
Now at 190ft altitude, the pilots realised their mistake and turned to align to the runway, but the aircraft continued descending at 860ft per minute, the report says.
The ground proximity warning system sounded when the aircraft was 63ft above the water, and the crew initiated a go-around when the aircraft was 0.3nm from the runway and just 40ft above water, the TSB says.
The altitude slipped to 39ft altitude before the aircraft began ascending, according to the report.
"Both the shower and the low lighting limited the visual references available to the crew to identify the runway properly until the aircraft had exited the rain shower," says the TSB.
In response, Calgary-based WestJet developed a "corrective action plan" that included giving pilots more information about operational challenges at Princess Juliana airport.
The airport will also add airport lighting system guidance to its operations manual, says the TSB.
WestJet did not immediately response to a request for comment.