(shrugs) I've been doing it the same way for several decades now.
To wit -- for example -- I'm running on 2nd and 4th Saturdays, from 11:30 AM to 6 PM. Those who make a regular commitment to make at least 3/4ths of the sessions (and that's a bare minimum) get to play. Those who can't don't. The end.
Some of the details are malleable ... for instance, end times for my main group for about seven years now have been based around getting players to the last train home, on time. But once they're set, they change only for one-offs, and only by unanimous consent. Everyone can make the 3rd Saturday this week, because Andrew's daughter's graduating on the 2nd, right? No? We'll be sorry to miss you, Andrew -- Amanda'll drop you a line telling you what you missed.
And that's the way it works. It's not -- and never has been -- the case that People This Day And Age just can't be expected to commit to a game. It's that a lot of gamers don't make gaming a priority, and a lot of us tolerate it.
Sorry, not me. I've been involved in a couple too many startups where the GM had an over-large putative group, tried for weeks to get unanimous consent over a day and time, finally got a day and time agreed to, was badly disconcerted when over half the invitees didn't show, and there never was a second session. Screw that.