It's worth noting that, at least in some of these cases, the reason they're drawing their own buttons is that these applications are drawing other stuff in the nonclient area (titlebar).
Firefox, Edge, and Windows Terminal all draw tabs in the titlebar. And if you tell Windows "It's my nonclient area and I get to paint it!", then you gotta draw the whole titlebar. There's no way to tell Windows to draw the buttons and let you handle the rest.
To be clear, this is not a defense of Windows. So many modern applications are drawing stuff in the nonclient area! There should absolutely be an API that lets you use standardized caption controls and still paint the rest of it yourself!