?
I know what the software does, I have it, I use Logitech mice and other gaming peripherals myself. The dpi setting with the buttons on the mouse in linux does exactly the same as in Windows, and you can also set the different dpi values.
I don't think you understand the concept of how mice work. In linux, it doesn't need a bloated driver, but that doesn't mean that it has less functionality. If you set the dpi values in a conf file for your HID device, the HID device will effectively store those values, just as it does with the Windows software. The difference is, in linux it will store those values a few microseconds after system start, whereas in Windows, you'll have to wait for the driver to load, which takes a long time, because it's a big driver with a lot of bloatware surrounding it. If you're playing CS:GO for instance, you know that sometimes after a CS:GO update, your mouse doesn't switch profiles automatically when you start CS:GO. That's because the driver needs to catch up on the CS:GO update. In linux, that doesn't happen, if you've assigned values in a conf file, those remain unaffected by CS:GO updates and/or by a bloatware driver, it just always works the same, just as you've set it.
In Windows, the profiles are not stored in the mouse, but in the driver. Try uninstalling the driver, and then switching profiles, it will not work. The profiles are linked to applications. The only thing that's stored in the mouse, are the dpi values your switch to. The same as in linux.
The way it works, is that you can set values in a persistent and a non-persistent way. For instance, you can set different dpi values for different applications, and set those in a conf file linked with the application. That way, the dpi values will be set when you run that application, but will not be persistent in your mouse. The values that you set for the HID device itself, will be persistent, and are stored by the mouse. So in Windows, you can have 3 profiles, but in linux, you can have as many profiles as you want, and you can link it to whatever you want. All it takes, is a few seconds on typing a few characters in gedit or nano or leafpad or vim or whatever text editor you fancy. You're not sliding a GUI slider in some driver bloatware application, but for that, you're having more reliability, more functionality, and better response, and it works more consistently.