Imagine that you used std::thread::scoped for a few months in some critical places of your project.
If you use a stable language, you can concentrate on the challenges of the actual OS design.
In some cases, especially new projects (like a new OS), I think the pain of using an immature-and-powerful language is less than using a mature-and-weak one.