Well your son, you could coach/teach to correct the problem by teaching him why it is disrespectful to the indivdual(s) he is late for. Basically it's a big F U to whoever you were meeting. It is saying I have higher priorities than the pre-scheduled meeting at the agreed upon time. I don't value your time or our time together to discuss or solve whatever it is we are meeting for. If he plays sports, does he show up late for games and practices?
For the wife, that could be a little more difficult. Of course, if it is an event/meeting you are both going to, then perhaps drive separately if she is not ready at the time needed to leave to be on time. Just let her know well ahead of time, that if not ready by this time, I will be leaving and she can drive separately.
For co-workers that are consistently late, perhaps their manager should coach them up on time management if you don't feel comfortable coaching them up.