I think we could add some detection to in the code that if the bundle id doesn't match, then app should display a warning.
It would be a bit more code, but just a few lines of verification code when the application launches and the app can refuse to start up if the value doesn't match.
Someone dedicated would still be able to crack it, but it would at least require some effort on the part of the fraudster