I was interested to see what the *actual* reliability is, so I looked on
www.recenttraintimes.co.uk.
Over he past 100 days, the Inverness to London sleeper has arrived within 15 mins of schedule 91% of the time. 4 instances of delays of more than an hour.
The London to Inverness sleeper has arrived within 15 mins of schedule 94% of the time with one instance of delays more than an hour.
Looking at Easyjet stats (not for the same time period though, for Jan-Sept 2016),
http://www.flightontime.info/loco/airlines/ezy16.html
Luton to Inverness flights: within 15 mins of schedule 58% of the time, 10% of flights delayed by more than an hour.
Gatwick to Inverness flight: within 15 mins 50% of the time, 14% of flights delayed by more than an hour.
Not directly comparable data, perhaps, but I'd say it suggests that the sleeper actually does rather well in comparison.