At a first glance the g-code seems to be ok.
You may want to run PID-tuning iot ensure that the observed problem is not caused by incorrect PID parameters. Incorrect nozzle PID parameters could result in infinite waiting time to reach target temperature…