I'm sure this isn't exactly what you want but the you'll see what I did.
I removed your code in the onSectionEnd function to make the changes more obvious. The forceToolAndRetract variable is controlled by the SafeStartAllOperations property. I used it to make the insertToolCall variable true. You can manipulate it however you want.
In my LB3000 post I use ManualNC to force the machine home between certain operations if I want to inspect an insert of the part etc. I didn't add that to yours but wanted to share that it was a possibility.