I have selected the 9090 port for communication, but the Arduino tells me that it receives the data on port 62181 (although the board is configured for the 9090 port)
Where in your code do you determine it is received on port 62181? I show your code only prints the sender's port, and it may be port 62181.
The "Destination not reachable" message normally indicates there is no route to the ip you are returning the packet to. What IP is the wifi shield getting from the router, and what IP does it show as the sender?