In 2007 I booked a flight on USAir to Munich via Philly. After booking I started to watch their arrival times. In the first week, the USAir Philly to Munich flight was 9 and 10 hours late getting to Munich (because it left Philly late) on two days.
I called USAir to ask why the flights were so late, and, amazingly, after being passed from person to person for a long time finally found someone who knew something. He was in Operations and had access to the log that showed reasons for delays. It seemed that each of those aircraft were late because they had to replace a piece of equipment, but he couldn't answer why that seemed to always happen on Munich flights.
In addition to the Munich flight, there were something like 8 other flights to Europe leaving Philly from A gates at about the same time. I noticed that normally, the flights to each European city left from the same gate, but on those days that the Munich flight was late it left from another city's gate, and that city's flight left from the Munich gate.
In other words, Munich was a low priority, and if any plane would be late leaving Philly, USAir assigned it to Munich.
My point is that there are a lot of reasons for flights to be cancelled and it happens on all airlines. Finding space at the last moment on other flights for one or two people would not be too difficult, but placing 21 people all on a single flight would be very difficult.
I've flown to Munich on Lufthansa as well as on two US flag airlines, and I can definitely see why Lufthansa is rated a star better than the US airlines.