Next time they are coming, could you plan something that absolutely HAS to be eaten the moment it is ready - a souffle, say?
Tell them it is a really nice souffle recipe, which you are looking forward to having, but that it will be ready at X o'clock precisely and that you will be pouring pre-meal drinks at X minus 30 mins so that everyone will be ready to eat the souffle at its best.
Then do exactly as you planned, put the souffle in in the oven, pour your drinks and drink them, and when the oven timer rings, serve up the meal and sit down and eat it.
Have some sandwiches ready for them if they are not on time, and say that you are so sorry, but it was starting to sink and spoiling and you had to finish up their helpings as seconds. Say more than once how good it was and what a shame that they missed it and how are their sandwiches?
If they are bright enough to get a subliminal message in all this. good. If not, it may have to be repeated ("Remember that gorgeous souffle we had last month? We are having it again on Saturday next. Would you like to join us? X o'clock then.")