Search intermodular calls. Sort by Description, locate the one of the three "kernel32:terminateprocess" calls which is a subroutine of it's own executing:-
Code:
invoke GetCurrentProcess, 0
invoke TerminateProcess, AX
RETN
As it would be in a macro assembler... "invoke" of course ensures you push the correct number and type of parameters before a call. (see Iczelion's Win32 ASM tutorial 2 for more details)
Place an IBP (Instruction Breakpoint) on that fist PUSH, and (with the XTrap folder and libraries deleted, or moved) run the program.
It will hit the IBP pretty quick, and the first value on the stack will be the return address which called that routine. Right click it and follow in disassembly.
The instruction above your highlighted line is the call to that Exit routine, highlight that call, and replace it with a JMP instruction to the next instruction filling the extra space with NOPs. (little check box on the assemble dialogue)
Select all the altered lines, copy them to the executable image and save them.
Jobs done. 
P.S. There are other methods, the one you quote should work, but is not clean or elegant... If that's how you want to do it, for your self, that's fine.
I usually go through cleaning out the code that even looks for XTrap, but that's a lot of work, and very difficult to explain. Aside from freeing a little CPU time and a lot of wasted system calls, the only thing it gains you is some holes to put new routines of your own.
This method is a single line change and only disables the quit if XTrap not found routine.