I've found that sending an additional 3 bytes with the start message, making it:
0x05
0x20
0x00
0x01
0x00
seems to work, and lines up with other programs that interact with the xboxone controllers.
Note the 0x01 on the 4th byte. Without that, it continues to fail.
I make no claims as to the meaning of these extra bytes, but I can confirm that they still work with the original xboxone controller.