It is an issue in 2.4. In general I find wiced_hostname_lookup() very unreliable.
Some more comments:
Part of this may be because the lookup() function sends a UDP request to all the registered DNS servers, and then waits for the remaining time (derived from the timeout passed to lookup()), for a reply. So, there is actually no retries happening.
This explains the behavior I am seeing. It may be worthwhile documenting.
In general, I cannot rely on the lookup() function. I wonder if you can provide any other insights.