OK, but the default directory is a little confusing.

Maybe it should default to /usr/bin/
Also, I found this problem chiefly because WINE doesn't create MimeType associations... but I fixed that by manually editing. Then of course calibre properly picked it up automatically.
I did notice however, that the icon specified in the .desktop file, which can be found in "~/.local/share/icons/hicolor/*/apps/", was not picked up in the process.
This problem will really only be found by people installing software to their home directory

but it still might be worth considering anyway, yes?
(I saw you fixed the double error, and chose to not allow manually adding associations through .desktop files, which is fair enough.)