correct me if I'm wrong, but I think the question was which tense was better and why.
I'm not a native speaker, but we had this in class last Monday, so now I have the opportunity to look smart.
If I recall correctly, present perfect is to be preferred since the answer is focussing on the result (no reservation). With past simple the focus is on the action (not booking in advance).
You could rephrase the question to make it more obvious:
"Do you have a plane ticket?"
- "No I haven't."
I think the difference is, as would be expected, "I haven't booked" means that it hasn't been done up to now, whereas "I didn't book" means it wasn't done at a specific time or, at least, for a reason in the past:
I haven't booked because I don't fancy going there any more.
I didn't book because the agency was closed.
I didn't book because I decided I didn't fancy going there any more.
PS All these anwers are independant of it being "have" in the question.