Why does this single supply non inverting Op-Amp saturate?
This OpAmp seems not to be Rail-to-Rail, meaning that the output signal does not take values from 12V-0V (VCC to GND) but will saturate when nearing those values.

If you want to have to full 0V to 10V range, you should either select an OpAmp with Rail-to-Rail output or instead of GND on the negative supply, feed it with some negative voltage so the output can swing down to 0V

You can find more information on Rail to Rail OpAmps in this article.