No, she shouldn't have shouted at you. She has no idea why you had to cancel the appointment today.
I received a very nasty letter from the Practice Manager of my old GP's surgery, telling me off for 'missing' an appointment with the midwife as I had wasted a professional person's time and kept an appointment from someone else who might have needed it. They quoted the number of missed appointments they had had in the previous month and how much each missed appointment cost the surgery and the NHS. It went on to say that I must ring the surgery ASAP as if I didn't respond to the letter they might decide to strike me off their register.
I rang up in tears and the receptionist was quite sharp with me, until I apologised for missing my appointment but I hadn't known it was still on their system to have it, given that my baby had died six weeks earlier when I was five months pregnant with him. And that since he died I had seen both my GP and the midwife whose appointment I had 'missed' for a check-up and medication but been told they didn't need to see me again unless I felt I needed to go and see them. I thought the appointment had been cancelled by the midwife.
We also lost our daughter in my second pregnancy, she was premature and she died and the surgery wrote to me again to tell me I had missed an appointment at baby clinic, which I didn't know they had booked but obviously couldn't attend.
Then in my third pregnancy my DH rang the surgery to cancel an appointment for me and they proceeded to give him an ear-bashing, until he explained that I was already in hospital, having been admitted as an emergency with complications following the removal of my cervical stitch.
I appreciate that missed appointments don't help anyone, that this can be a hard and stressful job and that last minute cancellations are not ideal, but sometimes they can't be helped and it is just a last minute thing that stops you from getting there.
I know not everyone's circumstances for missing an appointment are as extreme as ours were, but the point is, they have no idea what the circumstances are for the person calling to cancel, and shouldn't assume it's not a good enough reason for cancelling or calling late.