Emulators in general are always less constraining on errors, software or hardware.
it's not the official way the console is working, but "doing things so it works" the same way. it fixes errors and bugs when there are, etc.
the real console is always more strict on errors than emulators.
the console verify if you pirate or use a REAL wii disc, why would the emulator do that? the emulator can't use a real wii disc, so it doesn't check whether you use real one or not. it doesn't verify if you use requested IOS, or if the TitleID is properly set in memory before launching a game, etc. it just launches what you feed it.
I'm thinking the error is either :
1. You used a bad dump as base for the patch
or
2. the patch is done wrong, and doesn't properly edit the internal titleID
Thank you Mark for wanting to help
I'm not sure what to look on the iso to verify it's good, but you seem to already know what to do and check.
I don't think it's a BCA (only new mario used that check, and it was another error)
Maybe analyzing the patched ISO and seeing the launcher's log would help too. it has some TitleID verification/log at launch. I'm not sure it can be debugged without an usbgecko though, because SD and network are de-init before launch, so it can't logs very last seconds of the launch.