Toronto came out running in the top of the first. Rajai Davis led off with a single and immediately stole second base, then, with one out, stole third. d'Arnaud walked and Eric Thames looped a singled to center, scoring Davis and advancing d'Arnaud to third.
Thames swiped second, Toronto's third stolen base of the inning, but was thrown out trying to advance to third on David Cooper's grounder to shortstop as d'Arnaud crossed the plate.
After Duke gave up one-out singles to Jonathan Diaz and Anthony Gose, Travis Snider doubled both home with two away.
Duke finished on a high note, however. Diaz led off the fourth with a base hit and the speedy Gose beat out a grounder to shortstop and both runners advanced on a throwing error by Sanchez, leaving runners on second and third with nobody out.
Duke, however, was able to pitch out of trouble without allowing another run.
Not only that, he struck out five.
"Obviously, the results weren't great," Duke said. "I thought I made some good pitches. Early in the game it seemed like they didn't hit balls hard, but they placed them well. It was a little mixed. There were times when I felt pretty good about it and times when I felt like I could have maybe done a little better."
Duke is competing with Jordan Lyles and Kyle Weiland for the fifth spot in the rotation.
Jake Marisnick hit a solo home run for Toronto in the ninth inning.
Up next: Left-hander Ricky Romero will be making his third Grapefruit League start when the Blue Jays return to Florida Auto Exchange Stadium for a 1:05 p.m. ET game against the Rays. Chad Jenkins, Jason Frasor and Drew Carpenter are also expected to get work. This could be the first time the Rays face former teammate Jose Molina, who signed with Tampa Bay as a free agent after last season.
Paul Hagen is a reporter for MLB.com. This story was not subject to the approval of Major League Baseball or its clubs.