Having normals that represent the surface we are approximating rather than to the flat polygons actually being used is the reason that OpenGL allows (i.e. requires) users to specify normals.
This is also the reason that we associate normals with vertices, even though this might seem very strange.