Edit: This workaround is no longer necessary, see other answers
There is a pure GeoNodes workaround..
Please see below for GN (Fields) update.
Compare the original mesh to a 1-level subdivision of itself. Points on the subdivided version which are sufficiently distant from the edges of the original are in the middle of the original's faces, and can be separated out:
Image may be NSFW.
Clik here to view.
There has to be a tiny Epsilon
in the Greater Than node to account for floating-point errors.. in this case, 0.0001.
GN(Fields) Update:
Just in case some have found some of this as counter-intuitive as I have, here is a route to one instance per face, aligned to normal:
Image may be NSFW.
Clik here to view.
..here shown with GN-modified mesh and instances together:
Image may be NSFW.
Clik here to view.
Image may be NSFW.
Clik here to view.
(Blender 3.0b)