"I've decided to just skip the birthday dinner with Aunt and Uncle this year."
(insert mom's shocked gasp of incredulity and 'whyyyyyy?' questions)
"Mom, this is my birthday dinner, right? (She agrees.) Okay, if it's MY birthday dinner, supposedly to honor ME, then why do we have to go at a time that's too early for me to really enjoy it, to a city that isn't my own, and to a restaurant that I don't enjoy?"
(insert yada yada about Aunt, Uncle and their 'needs')
"Yes, I know that, and that's fine when we're celebrating Aunt's birthday or Uncle's birthday. But this dinner is supposedly for my birthday, and I'm not out of line in expecting that as the guest of honor, I get to choose what I want within reason. I already compromised to accommodate their unusual schedule, and I also agreed to travel to YourCity. But seriously, I really shouldn't have to compromise any more. Otherwise, don't call it MY birthday dinner when nothing is really about ME. (And depending on the climate, you might want to add the following, just to get it out there: "And really, we ALWAYS succumb to their wishes about everything. That's not fair. When do they ever compromise for other people?")
And just hold politely firm. Plan something with your DH. And for your mom, just state what you want or are willing to accept, and then if they keep trying to change things, just say cheerily, "Oh, I guess it won't work out then. Maybe another time. Hey, did you hear about that great bean dip recipe?"