If a mobi file has an EBOK and an asin, amazon's software will *always* try to download the cover from the amazon servers, using that asin. The stupid part is that if the download fails (as it always will, for a fake asin), the software does not fallback to using the cover present in the mobi file. Not just that, this change was deliberately introduced by Amazon at some point. Earlier versions of Amazon's apps did not behave in this brain dead fashion.
calibre gets around this by putting a copy of the cover into the cover download cache on the device. This causes the Kindle software to just use that cached cover if the download fails.
Naturally, this only works with eink Kindles since on android/idevices calibre does not know how to upload covers into the cache for the Kindle app. Hence, this FAQ entry:
http://manual.calibre-ebook.com/faq....droid-ipad-etc