Can't talk to react native, but I spend my week building a Flutter app that targets iOS, Android and Windows.
Flutter will always be a compromise (performance, native "feel") if you are comparing against building 3 separate native apps from scratch, but in our case at least we got ~90% of the way there but only had to spend ~30% of the effort - we don't have the money to build 3 separate apps, so in the end the compromise is well worth it.
The main caveat for Flutter is that desktop support is pretty jank at the moment. It's "production ready", but there are a few things that don't exist on desktop (flavours being the main one that is annoying me at the moment), and a lot of the package ecosystem hasn't implemented support for windows yet - this is only an issue if the package needs to interact with platform APIs, regular dart code works fine cross platform.