How many proper cross-platform approaches are there these days? Just about every one I've seen is "grab the native platform's canvas, draw your own".
- Electron and friends (web toolkits, tauri, etc)
- Or my favorite: Just have a UI library which wraps all the native UI toolkits on each platform. Eg: https://daybrite.dev/
You can sometimes tell the difference because the QT emulated widget can do things that the native widget can't.