Well, there's an easier way to do it than this. On one non-mining node, issue the pause incoming command, so that it retrieves no new blocks from the network. Then wait for the next block to be generated, and gets its raw hex content from a different node using: getblock [block-height] false
Then make any modification you want to this block's hexadecimal, then attempt to submit it to the paused node using the submitblock command. You may see different errors depending on the type of change you made.