Livingston 2 Greenock Morton 1
The teenager struck after 75 minutes with his first touch, chesting down Burton O'Brien's corner before lashing the ball past David McGurn from close range to set up a fourth round clash at Alloa.
But the driving rain and fierce winds made conditions farcical throughout and only referee Steve Conroy will know why he let the game go the full distance without abandoning it.
The wind made its mark early on as the flight of the ball deceived Livvy keeper Colin Meldrum in the fourth minute but Oscar Ramos Rubio was on hand to clear.
In the eighth minute James McPake burst clear on the right but his low right-foot shot cannoned back off the post with McGurn beaten.
McPake went close again in the 17th minute when Rubio's close control just inside the Morton box set up the youngster but his low shot was well saved by McGurn.
Livingston were denied a clear penalty after 27 minutes when, in a desperate scramble to clear his area after an O'Brien cross had caused all sorts of problems, McGurn blatantly pushed McPake.
Morton had their fair share of possession but it was Livingston who had the better chances and only McGurn's outstretched foot denied Jim Hamilton after 34 minutes. Just one minute later Livingston were ahead.
David McNamee picked out O'Brien on the right and Rubio expertly met his cross as he side-footed the ball over the stranded McGurn.
But a minute later Morton were level when Shaun Dillon's free-kick was headed in off the base of the post by Peter Weatherson after a goalmouth scramble.
O'Brien had a low drive touched round for a corner and Stuart McCluskey cleared a Goran Stanic effort off the line in rare second-half chances as conditions deteriorated.
But Livingston needed just one more chance to seal the win with Snodgrass' late strike.