Doctors often overbook themselves, trying to fit in as many patients as possible. The more patients they see, the more they get paid. If you're late, then it means you wasted their time on a no-show when they could have seen a paying patient, hence getting charged and the appointment canceled. Overbooking often means they end up having to spend more time with each patient than they actually scheduled, meaning that the later on in the day your appointment is, the more likely it is that you're going to have to wait on the Doc to finish his or her previous appointment. Sucks, but it's just how it is.