Hombre, en principio es "raro" que tengas que parchearlo, yo no tengo M3 Simply, ni uso PA lib para programar... pero, ya que no has puesto el fuente, te comento una serie de detalles que deberias tener en cuenta:
1) Que el emulador no es una NDS y por tanto, puede darse el caso de que dejes algo sin inicializar, o utilices algo de forma incorrecta y en el emulador funcione y en la NDS no.
2) Los M3 usan un boton especifico para cargar homebrew, (START) aunque con el boton de "siempre "suelen funcionar bien las aplicaciones (pero yo he tenido un ejecutable homebrew (¿antiguo?) que solo me funcionaba si pulsaba START)
3) El M3 Simply utiliza slot 1 y seguro que no tiene soporte para libreria FAT. Tal vez la PA lib inicializan algo de la FAT de forma interna o tal vez lo estes invocando tu con alguna inicializacion y pete por ese motivo.
Siento no poder ayudarte mas, pero entre que yo tiro de libnds y mis propias librerias (que encima son algo antiguas ya) y no tengo el mismo dispositivo que tu, pues es todo lo que te puedo decir.