Using op amp to measure battery voltage
Your maths looks fine, your circuit looks fine.

However...

a) is the opamp really needed?

If the MCU ADC input draws any significant current, then you need that opamp there to provide it with a low impedance drive. However, in my experience, most MCU ADCs have a high impedance, and could safely be driven from just the R1/R2 voltage divider with no problems.

b) Do R1 and R2 need to be that small, draining high current from the battery under test?

Most opamps have a high input impedance in that configuration, you could almost certainly go for 100x those values, probably 1000x, without excessive errors, and much lower current drain on the battery. This latter is important if you want to leave it for months off charge.

c) The title is a little misleading, as the opamp is not doing any measuring, just scaling/buffering the cell voltage into an ADC that will actually do the measuring.

d) for that gain and input range, make sure the chosen opamp is a low voltage rail to rail output type. Venerable old but popular types like LM324 for instance are next to useless at 3.3v supply.