Sorry, got caught up in putting my two to bed and having tea.
I used to find that my two would never sleep any later than a particular time, no matter how tired they were at that age, or even now come to that. I think that is pretty normal for small children. In fact, the more tired they are the more likely they are to wake up early.
Like adults children don't need to go to bed earlier or sleep any longer if they had one bad or late night. I know we all like a lie-in as adults but apparently that is not the best way to deal with loss of sleep and we should just keep to our routine and go to bed and wake up at our normal time. If your DS wakes up obviously tired and grumpy I would try and move his nap half an hour earlier tomorrow and see how that goes.
If you go out in an evening again, as you did this evening, I think I would just drive around until DS went to sleep. Does he normally take a little while to settle? It could be that 20 minutes is not enough to settle properly and if you just drove round for another 10-15 minutes, he might be fast asleep. A bit of pain but at the same time if saves an evening like the one you just had.
Other than that, if he is still awake and at home, put him to bed and ignore him after that, unless he gets upset, of course. My DS1 used to sit in bed for half an hour most nights, talking to himself and looking at a book or playing with a teddy (he had a night light) but would settle himself eventually. If he is happy, don't go in and check up on him and just get on with your evening.
I hope that helps but really I just wanted to say that don't worry about them missing sleep. As long as it isn't happening every night and he is able to get back to his normal routine tomorrow, I am sure he will be fine.