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).