This is an intended feature to prevent browser and app hijacking . the registry will detect changes to default apps and switch them back if not changed in the correct way . I have been deploying default apps to all my 20 + sites without issue. Windows 10 changed the way you deploy default apps from group policy to the use of default appassociation.xml
Best practice ---- >https://blogs.technet.microsoft.com/...s-for-it-pros/
i know this applies to the Professional /domain environment but its still relevant for home PC's as you could deploy this via gpedit.msc
snippet from the MS article into the reasons for the change
"There were different ways and guidance to set default program prior to Windows 10 (see Managing Default Applications).
Before Windows 10, an application could check default apps, ask for user consent and set default app programmatically using Windows API.
But some programs skip the user consent and set the app defaults into the registry. The main requirement for default file association is often forgotten: the end-user is in control.
Now in Windows 10 checks if registry file extension keys have not been modified to prevent file association hijacking"