Backup goalie Eddie Lack made 22 saves for the Canucks, who went 5-1-1 on their seven-game road trip.
Higgins gave the Canucks a 1-0 lead with 2:49 left in the first period when he raced down left wing on a 3-on-2 rush and took a shot from the left circle. Defenceman Roman Polak slid down to block the shot, but he deflected it instead, and the puck sailed over Halak's left shoulder.
After Kesler made it 2-0 with a one-timer from the slot at 9:34 of the second period, the Blues got back in it by scoring on a 5-on-3 power play with 6.4 seconds left in the period.
T.J. Oshie got control of the puck deep in the left circle and sent a centring pass to Steen, who beat Lack with a one-timer.
Sobotka made it 2-2 with a shot from the right circle 1:38 into the third period.
NOTES: The Blues played their first game after having a week off. St . Louis played an NHL-low seven games in the first 22 days of the season. It marked the lightest schedule to begin a season in team history. ... Vancouver's Henrik Sedin, who entered the game tied for second in points with 15 and first in assists with 12, earned assist on Kesler's game winner. ... The St. Louis Cardinals' Jon Jay and Daniel Descalso attended the game during an off day in the World Series and received a large ovation when they were shown on the video board.