In the descriptor_defs.h, by default, the INTERFACE_NUMBER_MISC_CONTROL is in front of the INTERFACE_NUMBER_DFU.
However, in the USB descriptor, the DFU descriptor is in front of the USB control. This will cause problem for Windows (but looks fine on macOS), because the interface number is not continuous, looks Windows is not happy with that.
Move the INTERFACE_NUMBER_DFU in front of INTERFACE_NUMBER_MISC_CONTROL will solve the problem. FYI, thanks