It will work. I don't think your kernel is flakey. If anything, I think the problem is elsewhere. And I think the fault is in the simulator, but I can't get the Bochs team to agree one way, or the other, with my suggestions regarding this project. Yes, please do.
I traced through my rom image. at t=511471, the BIOS jumps to 10:4000 (selector 16 starts at 0, so it's jumping into very low memory, where it was busy putting something earlier. I think it was decompressing something there from the looks of the trace and the map file.)
Once at 0x04000, it outputx 0x13 to port 0x80 and seems to commit suicide shortly thereafter.
I'll send you what I have offlist.
Regards, Andrew