I'm curious as to why you say it's 'critical' to have your own domain on Github pages? Is it to do with search engine listings?
If my blog was raganwald.githubpages.com, GitHub could theoretically decide that githubpages needed to be deeply integrated with Windows or some other foolishness, and I’d be screwed.
But since my blog appears to the world as raganwald.com, I can leave GitHub Pages whenever I like, and all the links will continue to work. It's about long-term control, and for that you need:
1. Control your content, ideally with a copy of the source on your own devices at all time, in an open format with an ecosystem of tooling, and;
2. Control your domain name.