"He (Mark) got away from us a little bit and we just started chipping away at this lead running the low side of Turns 3 and 4," Cannon said.
Smith, who will be running all four races of the United States Auto Club Eastern Storm series for non-wing sprint cars, took the lead from Scott Wilson on lap 4 of the 25-lap feature.
By lap 7, he had nearly a straightaway lead over Cannon who started ninth.
358 sprint car points leader Jason Shultz was a distant third at the halfway mark.
Cannon cut the lead to less-than-a-second with 10 laps to go and moved in for the lead on lap 17.
It was Cannon's 44th-career sprint car win at the track. The 25-lap feature went non-stop in a time of 8 minutes, 1.963 seconds.
Smith held on for second with Shultz, third while Larry Kelleher and Matt Horst rounded out the top five.
Sixth through 10th were T.J. Stutts, Ryan Kissinger, Nyle Berkes, Colby Womer and Duane Mausteller.
Heat wins for the 19 358 sprint cars went to Wilson and Horst.
In the caution-filled 25-lap late model feature, Jeff Rine of Danville took the lead on lap 13 from Middleburg's Donnie Schick to score his third win of the year and 82nd of his career.
"The track was pretty racey; the top and the middle was there and Schicky was running the bottom, but I ended up getting by him on the bottom for the lead," Rine said.
There was five different lead changes among three different leaders with Schick taking the lead on lap 10 from Chad Davis. He held the led until Rine passed him on the low side of Turn 4 on lap 13.
Schick, a two-time late model track champion pulled into the pits on lap 20 with a right-rear flat tire.