The above quoted article seems to blame the problem on individual manufactures. But the "option" behind optional serial numbers is really in the standards for the USB device classes. A USB class has a defined set of configuration data built in to each "class compliant" device and uses a class-standard driver for at least the lower levels of driver. Some class examples are printers, scanners, and MIDI interfaces.
A USB class that is defined with a serial number requires a (unique) serial number for all devices in the class, e.g. printers or disks. A USB class that is defined without a serial number will not have serial numbers in devices. Scanners and MIDI interfaces don't have serial numbers. Of course this is totally unrelated to possible variations in USB ports.
The generic device recognition problem with MIDI interfaces and scanners and other classes without serial numbers is not a device manufacturer problem or a Windows problem, but a USB standards problem. On the other hand, running out of space for device connection history, such as the Windows limit of 10 MIDI interfaces, is the fault of the OS.