That's the exact error message I get when I try your suggested --usb BXM:0
CGMiner misidentifies my Jalapeno as a BXM too.
I suck
The code only allows you to restrict by the parent driver type, and ANU and LIN are both icarus (ICA) so there's no workaround for that.
BXM is however bitfury so assuming you don't have any other bitfury devices... restricting it as BF1 is the key there. (--usb BF1:0).
Unfortunately the name is based on the first device that had that parent driver and I know BF1 doesn't make much sense for all bitfury devices...
Anyway we didn't anticipate other devices would use variants of the same driver and hadn't worked around this possibility to date, and I kinda forgot

IMHO, I don't think you suck.
As far as I've understood, manufacturers have their share of guilty on this since they don't do any effort to distinguish how the devices get recognized.
I understand it isn't quite easy to do, it implies some effort.
But they prefer the easy way as they think we don't mix devices, we only use the ones they manufacture, they are the last water in the desert.
As far as I've followed this topic, I've seen a great effort from you, trying to have CGMiner to recognize them all, when it would be useful if they introduced themselves correctly! (Hey, Hi CGMiner! I'm a Ant Miner S3 siting ondev/USB0! Could you please include me in the workload?)
Since you are not omniscient, you've been doing a hell of a job, given the lack of help some manufacturers provide.
At least from me, my sincere thank you!