bInterfaceNumber(MI_xx) Hardware ID Value

I am using an Arduino Leonardo to spoof different USB Devices with VID and PID, however the MI value in the Hardware ID string changes constantly between 00 and 02.

I have attempted to find a way to hard code MI_00 in the avr\cores\arduino\USBcore.cpp file as it mentions the counting of interfaces. Removing or changing these lines has resulted in the device malfunctioning.

Any assistance would be greatly appreciated, and I can provide further information if required, cheers