As well as no good deed going unpunished, it seems that once you start you are not allowed to stop.
If it came to the direct choice between you taking her dinner and her not having one at all I am sure you would still step up.
That’s not the case though, and just because you have been the only one to put yourself out so far, it doesn’t mean you are the only one who can.
Apart from leaving my children on Christmas Day I would find leaving my Christmas meal to get cold, whilst rushing to get the meal to Gran so it’s still warm, hard to do. I doubt you throw the plate through the door and go, so you are away from your DC and your own meal for well over an hour.
How would your parents feel if at the very moment their restaurant meal was ready they had to leave it for an hour to deliver your Gran’s plate? How would they like to do that for 3- 4 consecutive years? That is what they are asking of you, and they wouldn’t have to leave young DC behind.
I am also sure that your Gran would appreciate a longer, less stressful, visit on another day if she already has lots of visitors on Christmas Day. I think others have made a sensible suggestion that you visit on either Christmas Eve or Boxing Day, because you clearly care for your Gran and enjoy her company.