I tested the whole of the Cleaning Qeynos Hills task chain just now with the script I posted above. The only way I can get it to fail in the manner you describe is if I have a syntax error, or other error with the quest::enabletask command after the 'Well done, I have another task if you are interested.
i.e.
Code:
plugin::Whisper("Well done, I ahve another task if you are willing.");
quest::enabletask(quest::nexttaskinset(1, $task)); <--- Check you have the correct task set and no errors on this line
If you are sure the line is correct, take a look in your character_enabledtasks right after you finish the first task to see if the second task is getting enabled.