I think the current flight scheduling is tedious, repetitive and unrealistic.
Here is how I would do it. Instead of it being contracts, I would make them deals (kind of).
So, say you had a small and a large gate. An airline would contact you saying ‘We’d like to set up a [daily/twice daily/weekly] route to (undefined).’ Then the airline would give its requirements. From as specific as we’d like 1 flight on Monday Morning and 1 flight on Thursday Evening to as unspecific as we don’t mind when you place the flight, just let us know. Then you’d fit that into your weekly schedule. Airlines would pay you for the airline fees (As in the fees panel).
Then I’d have Airline Satisfication, based on Passenger Happiness, Security, Facilities, Upkeep (Cleanliness, Repairs), Decor, Baggage, Fuel, Access, Quality of Staff, Franchises, Timeliness etc. An unhappy airline might pull out of you airport (only coming back if your airport gets a good reputation (average of your Airline Sanctification Scores).
I would also change the Check-in desks so you assign a desk to an airline, instead of an individual flight. It doesn’t matter how many check-in desks an airline has, but if they keep getting late passengers then the airline sanctification would drop (Due to Timeliness, Facilities and Passenger Happiness), however if you give them too many, it costs the airport money to upkeep the staff.
You could also assign airlines a baggage claim area (like with the staff rooms assigning types of staff).
Eventually, an airline might want your airport to become a hub. This means you assign them gates, baggage claim areas, check-in desks and lounge areas and the airline will automatically fill in the flights, based on their routes. Instead of a flight by flight basis, the airline would pay you ‘rent’ to use the terminal and the runway.