I'm very sorry, but I didn't notice this was the iOS forum. I've been doing some extensive hacking on WKWebView. That's what attracted my interest. But I've only done this on macOS so far. I will need to port all of this over to iOS. I don't like the flash either, so I went ahead and found a fix.
There are a couple of issues, at least with my demo project. There is a white flash when the app first loads, but that is from the launch screen. I built a simple app that has a button to display the web view. That way, I can tell where the flash starts and ends.
After constructing the view, but before loading it, you have to do two things:
1) Set webView.opaque = NO
This will prevent the web view from clearing the display.
2) Set webView.backgroundColor to the eventual colour of your HTML, or something halfway decent other than white or black.
You have to do both. If you don't set the background colour, you still get a flash, just a black one this time. If you don't set opaque to NO, you get a white flash regardless of the background color.
Trying to set the background colour to clearColor doesn't work at all.
There is a bit of a disconnect with the notch. If you know your eventual HTML background, you can set that as the webview background and everything looks nice. If your HTML has a different background, it gets messy.
I did not check this on the beta, but I'm pretty confident it will work. There is no way to avoid the flash, because the phone needs to do that to draw the notch. All you can do is pick the flash colour to avoid annoying the user. I see why this has been so difficult for people to figure out. The "opaque" setting really has nothing whatsoever to do with opacity. This is simply a "clear background with white" toggle. If you turn it off, you turn off the "clean background with white" operation. It will still clear the background, but with the background colour this time, which is black by default, unless you change it.