Mikel Arteta denied teenager Danny Welbeck the headlines as Everton snatched a late 2-2 draw at Sunderland.
The Spaniard's 82nd-minute shot was deflected past keeper Craig Gordon by the helpless Phil Bardsley to ensure a topsy-turvy encounter ended all square.
The game was only six minutes old when Cahill managed to find enough space inside the Sunderland penalty area to meet Leighton Baines' inviting cross with a firm downward header to make the most of the full-back's neat interchange with Steven Pienaar down the left.
Bolo Zenden helped to craft Sunderland's equaliser after 23 minutes. He skipped away from Pienaar and Baines to fire a low cross to the near post where Welbeck eagerly slammed home.
On-loan Manchester United striker Welbeck gave the Black Cats the lead with 19 minutes to play. Phil Jagielka did well to get a block on Darren Bent's shot to concede a corner and when Kieran Richardson crossed at the second time of asking - amid strong suspicions of offside - the teenager looped a header over Howard and into the net.
But with time running down, Everton fought their way back into it when the unfortunate Bardsley deflected Arteta's shot past keeper Gordon. Welbeck dragged a close-range effort wide deep into injury time, but Beckford perhaps should have won it with virtually the last kick of the game when he ran on to Jagielka's clearance but fired wastefully over with just Gordon to beat.