I’ve finally had some time to test the Xin-mo dual controller with a fresh installation of RetroPie 3.0 and the autofire on the axis issue no longer exists, so applying the previous patch is not needed anymore. Great news!
With regards to it not being recognised as 2 controllers, I’ve tested the addition to /boot/cmdline.txt
method that @feederchain describes above and it also works with the Xin-mo dual controller. The code to add to the end of the line (after a white space) is:
usbhid.quirks=0x16c0:0x05e1:0x040
Reboot required after saving the file.
Having reached this solution, I’m not going to bother trying to patch the kernel as this fix is simple enough for those of us with the Xin-mo.
Thanks very much to @feeder for all the help and effort!