I've tried creating a SplitView myself with a UIViewControllerRepresentable. It works initially, but it crashes in many more complex scenarios. For example, trying to use NavigationDestinationLink to drive navigation constantly causes a crash about some internal environment object not existing. My thought is that the master and detail view controllers are getting split up into two different scopes somehow and making an environment object become unreachable.
This may explain why Apple shows using a NavigationView to implicitly create a split view, so the internal environment object exists in both scopes.
I also tried to implement the SplitView manually using a delegate, but then SwiftUI ends up not laying out views, so everything appears on top of each other initially until I interact with it.
At this point, I'd just wait until Apple's official version is added.