I mean this nicely: You're a fool for going along with it, and it won't change while you do.
Will it make things more awkward or difficult for you in the short term? Probably, yes .But it will make things easier for you in the long term, and you will reap the rewards for years to come. Short term pain long term gain and all that.
Try:
"Oh I'm sorry to say that I don't have a suitable meal planned nor suitable food in the house for DN. You can either order some to be delivered for a suitable time and let me know, call them to rearrange, or call them to tell them to bring a takeaway or something. Let me know when you've done it."
If he tried to put labour back on you by asking you what DN eats, shrug and tell him to ask DN. If he refuses or doesn't let you know within a reasonable time frame? Then you take your kids out to feed the ducks, to a coffee shop or the park, and make sure you're not in when MIL and DN will arrive. Put your phone on silent and take your time. When you get back or eventually decide to answer your phone, feign complete surprise - DH told you about it this morning but sadly you and your children already had plans for this evening so you told him that he would need to entertain them, isn't he back yet?
I found out at the grand age of 39 that I have ADHD. I found out because there's a lot of awareness about ADHD around at the moment, which is why people are talking about it and explaining that it may be a factor in somebody's behaviour. As another poster says, I don't use it as an excuse, and I beat myself up daily for finding stuff hard that other people seem to just get on and do. In this case the person who has ADHD isn't using it to explain or justify their own behaviour either, so maybe everybody can just chill out a little on that score.