It's really too bad things like Electron aren't better, because making cross platform applications is kind of daunting and so a lot of places just put it on the web.
Libraries like PyQt (which Calibre uses, for instance) make it feasible at all. They still won't save you the moment you encounter any platform-specific corner case, of which there are uncountable multitudes.
Tip your OSS projects. They earned it more than you know.
I think it's still less than the amount of effort the VS Code team has put in trying to make Electron work. The guys (I believe only two) at Sublime HQ have managed to create a cross platform UI that is efficient and works well.
Kinda depends if you want to find developers willing and able to reinvent a lot of things or not. If you can justify rebuilding a textbox or scrollbar (for example) then perhaps you can roll your own solution. Otherwise you look for libraries.
The web is rich with 3rd party support for a lot of things, so as a platform it's attractive. If you need to grow, you can be more confident it will have what you need. But with that also comes a lot of bloat, legacy and poor decisions too.
Sometimes eye candy actually helps usability. There was a time when I would have argued Apple did this best, but lately I feel less this way. Still, look at apps like Zed. Beauty in its simplicity. That's worth a lot.
What frameworks like Qt often suffer from is an outdated or overly restrictive design language which is harder than worthwhile to customize, so you get apps that feel antiquated. Some people aren't as bothered by this as others, and generally I agree it shouldn't matter, but it does.
"Eye candy" also helps prevent the uncanny valley effect, but for ux.
On Mac OS, I can almost immediately tell when something is a QT app. It can be a beautifully well designed app, and my hindbrain is just screaming that it's not right. Take QGIS. Looks good, works well. But doesn't feel like a Mac app.
And it's not even about following all the Mac conventions. Sure, I like the Mac style preference panes OmniGraffle and Transmit have. But the telegram Mac client, written in swift, has it's own weird preference system, and still feels "right"
Electron apps, ironically, don't trigger the uncanny valley effect. Maybe it's because they all bring their own UX, instead of trying to ape platform ux, maybe it's because the font and other rendering is more polished, by virtue of being browser descended, but either way, they don't make me feel like I'm interacting with some weird not-quite Mac program.
Not all software is used hours a day. Some software needs to be intuitive so the user doesn’t need to invest hours to learn it. And visuals play a huge part in that.
They probably use something like Qt, which is probably what a lot more apps should use. But when you have a workforce that knows React, you build webapps.
The reason everything is SaaS and Cloud-based apps isn't technical, it's commercial. You have much more control online than offline, that's the number one reason. Everything else is so distant that you can ignore it for most intents and purposes.
Every software:
* Should operate offline
* Should export and work with locally saved (preferably) human readable format