How to subdivide on a new face - doesn't work

I have a hole in my object. the vertices surrounding the square hole are aligned on x-axis. I want to add a surface/face by selecting all vertices and pressing ‘f’. it adds a face. than i want to subdivide it like the rest of the surface of the object, but it doesn’t. instead it pulls the centres of adjoining planes towards the new plane.

Subdivide creates edge loops across quads. You have a big fat n-gon there. Subdivide is not the correct method. You should use grid fill to fill that hole, not F.