Jordan Binnington made 33 saves for the Blues (37-38-7), who lost five of their final seven games (2-4-1).
"We hung in there," St. Louis coach Craig Berube said. "[Binnington] was really good in the game for us. Made some big saves early on in the first, and in the third, too. Kept us in the game."
The Blues failed to qualify for the Stanley Cup Playoffs for the first time since 2017-18, the season before they won the Cup.
"It's tough. You work hard to play at this time of year, obviously," Binnington said. "It's frustrating. It just felt like it wasn't our time, it wasn't meant to be. Everybody here, we worked hard. It just didn't feel like it was going our way, and that happens. That's part of being a professional athlete and a competitor. It's how you handle it. You've got to just clear your mind, reset, refresh, recharge, and come back at it even stronger."
Johnston made it 1-0 at 3:45 of the third period. His initial shot from the high slot deflected to Evgenii Dadonov, whose attempt at an open net from the left circle hit off the far post and caromed back to Johnston, who scored into an his own open net.
"We talked between the second and third, that's going to be a playoff-type game," Dallas coach Peter DeBoer said. "You're facing a hot goalie, or you're not getting the calls from the officials, whatever the adversity you're facing, you've just got to stick with it, stick with it, don't get impatient. That's when you lose a game like that, you step outside of your comfort zone trying to push too hard. I thought we did a good job of just sticking with it."