use point_on_surface for more accurate center point

This small change uses point_on_surface to get the center of a geometry. Point_on_surface guarantees that the point will be within the given geometry. Centroid can potentially be outside the geometry, for example, with  a horseshoe shaped polygon.