Why do they always make me wait to see the doctor when I make an appointment? I go on time.

Humans. Since we talk to humans, not widgets, it is hard to always predict how long each person will take. If we go the other way, and only schedule a few patients a day, we wouldn't be able to keep the lights on. Would you want your visit to be rushed? Hopefully technology will catch up and allow patients to know when their md is running really late.
Last minute bombs. It only takes one patient to say "oh by the way, i'm thinking about killing myself" to ruin any schedule. Patients are also not very good about asking for extra time prior to having a seizure or cardiac arrest in my office. Rather than shoo those patients out and hope that they live, i drop what i'm doing to take care of them. I'll do the same thing for you when you are in crisis.