New York built an 8-0 cushion to down the Padres for the second time in as many meetings in their season-opening series.
Duda's homer came in the second inning and Buck delivered his in the fourth, both of them coming off starter and loser Clayton Richard.
The Mets piled on a four-run fifth, an inning highlighted by another two-run blast from Ike Davis.
All of the San Diego runs came in the final two innings.
Matt Harvey benefited from the run support and allowed just one hit over seven innings to get the win. He walked two and struck out 10. The only hit allowed by Harvey was a leadoff single from Everth Cabrera in the fourth after the New York starter had retired the first nine men he faced.
Jeb Bush 'thinking about running for president' in 2016
Humongous iceberg slowly drifts away from Antarctica