Is this circuit correctly protecting my Arduino I/O pin?
This is an active circuit, high frequency overvoltage might pass the circuit before the MOSFET turn off. 

I would suggest using more simple and popular solution:


This kind of circiut is also located inside Your micrcontroller (GPIO Protection).

In addition to that You can consider TVS Diode and additional Capacitor at the input.