Im a GP. Generally I run to time, but it only takes one patient and suddenly the whole morning has gone to pot and Im 45 minutes late. Its very hard to cover all a person needs in 10 minutes also.
Where I work, the main problem is that my patients come in with a list of issues to discuss with me. While it is reasonable to deal with 2-3 problems, some come in with 8 and frequently people "save the best to last" so to speak, and will often leave the most serious symptom till the last question. Therefore I spent 8 minutes discussing their fungal nail infection and viral cough but as Im about to close the consultation, they mention that they have crushing central chest pain (classic symptom of a heart attack). You can't then say - "times up. Bugger off and have a heart attack on your own". You have to deal with it.
Another common problem is if we have to admit someone to hospital e.g. said heart attack. You physically cannot see the patient, examine them, give immediate necessary treatment, make a diagnosis, call an ambulance, spend 20 minutes waiting for switchboard to answer at the local hospital, bleep the on call team, speak to the on call team, write up referral letters/notes etc and pack the patient off in 10 minutes. Its bloody hard to do in 30 mins and if you are already 20 minutes late it soon adds up.
Also, there are constantly nurses knocking and asking for advice, secretaries with questions, receptionists asking for scripts to be signed, emergency telephone calls, plus the necessary bath room breaks.
This is all compounded if you are seeing the duty doctor for an emergency appointment as their whole clinic will be dealing with these sorts of things.
Lastly (sorry to go on) but some GPs are just crap at time management. They may be great doctors, but they can't organise their time.
Generally though, the minute Im over 10 minutes late, I always apologise to the person for keep them waiting. Thats just good manners IMO.