How does an airport catch up when it is behind on traffic?
Most airports aren't at 100% capacity any of the time: they simply fit in a few extra flights for a couple of hours until they're back on track, causing relatively little delay.
Even those who are at 100% capacity sometimes, aren't usually at 100% capacity 24/7. They can recover by delaying everyone a little for a few hours, with the delay slowly reducing as the airport gets quieter


With a very busy airport (Heathrow is often quoted as an example), however, it's possible that the airport is at/near 100% capacity for long periods. Heathrow runs at nearly 100% capacity (roughly 98%), and much of the "quiet" period is actually at the very start of the day which doesn't leave much slack.

However, there's some scope for "absorbing" flight delays: at Heathrow, most aircraft will sit in a "hold" stack for a while before landing. Aircraft join this stack as they arrive and wait their turn to land. If one plane is a little late, another will simply take its place in the queue and everyone jumps "up" one space until the delayed flight. As long as there are aircraft in the stack, short delays or aircraft arriving early don't really make things too chaotic - there are still 60 aircraft landing in the next hour, it doesn't really matter what order they land in.

However if there's a bigger problem such as ice, which means the overall capacity is reduced, flights must be cancelled as they simply cannot all fit in. In this case the airport will typically reduce capacity across the board and allow the airlines to choose which flights to cancel. In the case of Heathrow, this will usually be the relatively local, high-frequency routes: eg the once-a-day flight to Sydney, Australia will still fly, but one of the once-per-hour Glasgow flights will be cancelled. For the most part the number of cancelled flights is down to the airport/ATC, but the specific flights cancelled are up to the airlines.