James Hook registered the Lions' only score of the second half when he was successful with a 76th minute penalty but then the Boks worked themselves into position to snatch that late try from replacement Danwel Demas with de Waal landing the conversion from near the right touchline in the driving rain.
At the start, Ronan O'Gara looked odds-on to open the Lions account when they were awarded a penalty after just three minutes but he hooked his kick badly. There was no mistake five minutes later and when Earls appeared in the out-half channel his trademark jink took him easily through the Boks defence.
It wasn't until the closing stages of the half that the home side showed any semblance of a threat and their out-half Earl Rose finally opened the scoring with a 36th minute penalty to leave his side trailing by seven points at the break.
Lions: Shane Williams; Riki Flutey, Gordon D'Arcy, Luke Fitzgerald; Ronan O'Gara capt, Harry Ellis; Tim Payne, Ross Ford, John Hayes; Donncha O'Callaghan, Nathan Hines; Joe Worsley, Martyn Williams, Andy Powell. Replacements: Lee Mears, Phil Vickery, Simon Shaw, David Wallace, Mike Blair, James Hook, Ugo Monye.
Emerging Springboks: Z Kirchner (Blue Bulls); L Vulindlu (Sharks), D van Rensburg (Leopards), M Newman ( Western Province), B Basson (Griquas); E Rose (Golden Lions), J Vermaak (Golden Lions); W du Preez (Cheetahs), B Maku (Blue Bulls), W Kruger (Blue Bulls), S Sykes (Sharks), W Steenkamp (Blue Bulls), D Potgieter (Blue Bulls, capt), J Deysel (Sharks), D Vermeulen (Western Province). Replacements: T Liebenberg (Western Province), P Cilliers (Sharks), F van der Merwe (Golden Lions), J Botes (Sharks), H Adams (Blue Bulls), W de Waal (Western Province), D Demas (Cheetahs).
Referee: Alain Rolland (Ireland).
Assistant referees: Nigel Owens (Wales), Jonathan Kaplan (South Africa).