NEW YORK -- The Buffalo Sabres made sure the New York Rangers will have to wait at least another couple of days to clinch their sixth consecutive trip to the Stanley Cup Playoffs.
Ryan O'Reilly scored twice in the first period, Chad Johnson made 33 saves and the Sabres held off the Rangers 4-3 at Madison Square Garden on Saturday.
Buffalo ended a nine-game losing streak to the Rangers and won at the Garden for the first time since March 23, 2012.
"We've had a few places where we've had a tough time winning, and they are tough to win in, and this is one of them," Sabres coach Dan Bylsma said. "We know the Rangers are fighting for every point they can get right now, this is a playoff type of game for them, and that's the way we approached this."
Video: BUF@NYR: Girgensons extends Sabres' lead early in 2nd
Instead of getting to celebrate, the Rangers lost their third in a row. Goaltender Henrik Lundqvist was replaced by Antti Raanta after early in the second period after allowing three goals on nine shots. Raanta made 14 saves.
"I just have to be quicker," Lundqvist said. "I need to come up with that extra save. The first period, and the first one in the second, I did not."
Lundqvist was pulled for the second time in New York's past seven games. He has allowed at least three goals in eight of his past 10 starts.
Kevin Hayes, J.T. Miller and Derek Stepan scored for the Rangers (43-26-9).
Video: BUF@NYR: Hayes buries E. Staal's gorgeous feed
Kevin Hayes, J.T. Miller and Derek Stepan scored for the Rangers (43-26-9), who will try again to clinch on Monday when they play their final road game of the season against the Columbus Blue Jackets.
The Sabres blew a three-goal lead Wednesday in a 5-4 shootout loss at the Pittsburgh Penguins, and they nearly did it again. Miller scored his 22nd of the season with 35 seconds left in the second period to make it 4-2, and Stepan got his 19th at 4:52 of the third when he redirected Chris Kreider's shot from the slot past Johnson, cutting the deficit to one goal.
The goal was Stepan's ninth point (three goals, six assists) in the past six games.
"We are competing hard," Stepan said. "I think we had our looks to at least give ourselves a chance in the third, and we come out on the other end of it tonight."
Video: BUF@NYR: Moulson's goal extends Sabres' lead
The Rangers' best chance to tie the score came when Casey Nelson and Mark Pysyk were issued minor penalties at 12:12 of the third period, giving New York a 5-on-3 power play for two minutes. But Buffalo's penalty-killers mostly kept the Rangers to the outside, and Johnson stopped three shots.
"We knew we were getting the one [penalty], and it took us about 15 or 20 seconds to realize they were calling two, and now you're stuck with two straight minutes of 5-on-3," Bylsma said. "It was a huge point, and it was an outstanding kill."
Two nights after older brother Cal O'Reilly had his first two-goal game in the NHL, Ryan O'Reilly scored twice in less than three minutes of the first period to put Buffalo ahead.
Defenseman Zach Bogosian pinched from the right point to slow Ryan McDonagh's clearing attempt and took a wrist shot that Lundqvist paddled into the middle of the ice. O'Reilly picked up the rebound and scored at 10:07 for a 1-0 lead.
"The first one was a good forecheck by those guys, and I just got a lucky bounce and put it home," O'Reilly said.
Video: BUF@NYR: Johnson's sprawling blocker save on Nash
O'Reilly made it 2-0 at 12:59 off a pass from Jack Eichel. Pysyk's breakout pass skipped off McDonagh's stick, then skittered past Rangers defenseman Kevin Klein, creating a 2-on-1. Eichel skated in on his off wing and backhanded a pass past Stepan to O'Reilly, who pushed the puck into the vacant net for his 20th of the season.
"[Eichel] made an unbelievable play to me backdoor," O'Reilly said. "That was a pretty special play by him."
It's O'Reilly second 20-goal season in the NHL; he had 28 in 2013-14 with the Colorado Avalanche.
Zemgus Girgensons scored 46 seconds into the second period to make it 3-0 and end Lundqvist's night.
Hayes scored his 13th of the season at 2:58 to cut the deficit to 3-1, but Cal O'Reilly forced Rangers defenseman Keith Yandle into a turnover, and Matt Moulson knocked in his own rebound at 13:09 for a 4-1 lead.
Video: O'Reilly, Johnson lift Sabres over Rangers