Maybe the problem is due to FM frequency definition in USA as stated in Section 73.201 of the FCC's Rules (
see).
In your case it seems that the tuner accepts the base channel frequency, that is odd while the center channel is even. In this case the float sum may lead to a value that is not correct. Try encoding directly 95.2 to check if the problem is the value itself, or try adding a slighty higher value (i.e. 95.1+0.101) ur using integers then casted to floats.
BTW for USA radio region limits should be 88-108MHz (not 87.5-108MHz).