TBH, i have never really forced my kids to stay at the table if they do not want to eat. i may try for about 5 minutes, and ask them "are you sure you don't want anything to eat?", but if they are sure, then i tell them to take their plate into the kitchen. (and put it on the counter instead of in the sink, which is where empty plates go).
obviously, this does not work in a restaurant setting, but they seem to have no problem on the occasions when we are eating out - they just eat lots & lots of bread.
also, we do not do dessert on a regular basis here. they rarely get stuff from us (as we usually wait to haul out the chocolate until they are in bed!
). however, i have no problem letting them have stuff at birthday parties & holidays & the like. like lana said, it may help if you just don't have any dessert for a couple weeks; kinda 'detox' his system, as it were.
it does sound like a battle of wills, and i think if you can just be more patient (stubborn!) than your ds, he will eventually be hungry and he will eat.