MacPherson's long-range goal secures point for St Mirren
Cammy MacPherson's long-range screamer was not enough to claim Hampden revenge for St Mirren as they settled for a 1-1 draw at home to Livingston.
It will be Davie Martindale's Lions marching out at the national stadium next Sunday to face St Johnstone in the Betfred Cup final rather than Saints after Livi edged last month's semi-final.
But they were denied the double over Jim Goodwin's team as MacPherson rifled home a stunning equaliser at the SMISA Stadium.
Livingston took the lead early through a freak Conor McCarthy own goal but they could not hang on to give themselves a morale-boosting win ahead of their showdown with Callum Davidson's Perth side.
The result does mean that St Mirren miss out on the chance to cut Livi's lead in fifth place to just two points.
Saints welcomed back Ryan Flynn and Dylan Connolly as Kyle McAllister and Lee Erwin took a seat on the bench.
The visitors had Robby McCrorie in goal for just the second time since October but were without suspended defender Jack Fitzwater and injured frontman Scott Robinson.
With a swirling wind, sideways rain and a quagmire of a pitch, it was clear from kick-off this would not be one for the purists.
And Livi's opener on eight minutes will hardly win awards for its beauty.
McCarthy was penalised for a trip on Gavin Reilly, although it looked a harsh call given the former Buddies striker had a handful of the defender's jersey as he went down.
Craig Sibbald's delivery to the back post should have been headed away but it got caught in a gust and Richard Tait instead nodded it against McCarthy's back, with a wild ricochet taking it into Jak Alnwick's net.
MacPherson went for an immediate reply with a firmly hit stinger. McCrorie got hands to it to push behind but it was an warning threat Martindale's men failed to heed.
First, though, Joe Shaughnessey wasted a free-header from the resulting corner while Sibbald had a powerful effort of his own pushed away at the other end by Alnwick.
But when MacPherson was allowed the time and space to take aim again after 31 minutes, Livi paid the price.
Ethan Erhahon fed the ball into Jon Obika, with the striker holding off Efe Ambrose as he waited for MacPherson to arrive. The midfielder had runners left and right but went himself as he unleashed an unstoppable drive high past McCrorie.
Both sides had close calls in the moments before the break as balls flew across the goalmouths.
Livi had the wind in the second half yet it took until 19 minutes from time for them to cut through the stodgy midfield battle as Shaughnessy booted Jaze Kabia's strike off the line after Serrano's corner had caused panic in the Buddies' box.
Saints almost snatched the win late on but Ilkay Durmus' shot was deflected wide while McCrorie had to gather Tait's fierce volley at the second attempt.