Why is activating network licenses so hard?

I had 7 SDL Trados Studio 2017 licenses active on our license server. We bought upgrades for those licenses to 2019 which requires a newer version of the license server software (SDLLicenseServerManager_2.0.27550). I installed it and it essentially upgraded/overwrote the old version. When I open the app, it shows my 7 licenses for 2017 are still active, but I cannot deactivate them to upgrade them to 2019 now; it throws an error (Sentinel RMS Development Kit: Error [5]: Cannot talk to the license server on host... Server not running??). And while the 2017 licenses are still active on the server, my Studio 2017 reports that it cannot connect to get a license.

I tried loading the old license server software but it will not let me install it since a newer version is already installed. So, in essence, I am stuck.

In addition, to the upgrades, we purchased 6 new licenses but when I tried to activate those on the license server, it churned for a bit and then threw another error: "Object not set to instance of Object" and did not activate any licenses. However, when I check my account, all of the licenses are now in use. So now I have zero licenses available for my users and have to wait for support to get back to me. 

This process is quite painful... and maybe it is partly my own doing, but I would hope that there would be better instructions/guidance on how this is supposed to work.

Note that I had a similar experience upgrading from 2015 to 2017. :(