Sorry. Another bad news update. So, in attempting to re-file the bug under a different way, I found this link: https://bugs.launchpad.net/calibre/+bug/894137
So, evidently, Kovid and team have had this issue reported to them in the past. And they actively dismissed it in a condescending manner, saying "Search Google, it's been reported 300 times." They don't adequately explain WHY (if you try to see why, they say "Amazon doesn't like sideloaded content." - which means... what... exactly?). There's no explanation about the ramifications in doing that, just a vague "Amazon doesn't want sideloaded content using their services".
For instance, does Amazon's software see the ASIN set properly but without their exact DRM, and think we're stealing or something? Or is it that Whispersync breaks somehow if two ASIN match but are actually slightly different files (honestly, DON'T CARE on that one, I only read on one device at a time and WS is OFF).
So basically, I feel cheated. I contributed $ some time ago to Calibre and now he/they are not only too lazy to code this, there is no adequate explanation why this is bad, even in the face of a real, clear bug.
Even the calibre manual at http://manual.calibre-ebook.com/cli/...t-14.html#id29
doesn't get into it. It says it won't sync to Amazon and to go complain to them about it. Well, how about this - change that option so that instead of a blank field, it puts the correct, valid, in-spec ASIN in there as it should be? If it still won't sync, who cares? The flavor text for that option already says that!
I'm going to go look again on Google, seems to me some time ago there was a post somewhere where someone figured out how to alter Calibre's output script to use the amazon: tag instead of the uid field. Not the best solution (because the script likely gets overwritten every time Calibre is upgraded), but it might work. I'll report back if it does.