Iterative deepening starts with a one ply search, then increments the search depth and does another search.
Intuitively, Iterative deepening seems like a dubious idea because each repetition will repeat uselessly all the work done by previous repetitions.
If we do not have a hash move to search first, perform a shallow search (say two ply less).
The best move returned from this search is then searched first.
Note that if we do not have a hash move at depth eight, we also will not have a hash move at depth six, four, two and finally zero, where the quiescence search will provide us with a move to start off with - hence internal iterative deepening.
The extra searches have a negligible cost compared to the time saved by improving the move ordering.