Tampa Bay won for just the second time in eight November games and the problems for the Islanders continued with their 11th straight loss.
It was the coaching debut for New York's Jack Capuano, who took over on an interim basis after Scott Gordon was dismissed Monday.
The Islanders have not won since Oct. 21, when they defeated Tampa Bay in overtime for their third straight victory.
Tampa Bay held a 2-1 lead when St. Louis put a slapshot past Dwayne Roloson with 1:29 to play in the third period. John Tavares scored 21 seconds later for the Islanders, but Nate Thompson clinched it with an empty-net goal with 16 seconds to go.
Gordon had a 64-94-23 record with the Islanders after being hired prior to the 2008-09 season.
Dan Ellis got the win by making 34 saves. Roloson stopped 36-of-39 shots.