Maybe your new program crashes because you write on the bound import directory when you add a new section.
Try to set to 0 the VirtualAddress and the Size of the IMAGE_DIRECTORY_ENTRY_BOUND_IMPORT in the PE Header of your new program and I think it will work perfectly