If statement not getting called after Lerping a Scale

I have this script where my object grows in scale and then shrinks back down when it reaches the maxScale, but when maxScale and his X Scale are the same… it doesn’t switch to the other … I tried printing the values to see if they ever became the same and they eventually did, so why doesn’t the If statement ever get called ?

public class knockBack : MonoBehaviour
{
	public bool growing;

	public float maxScale;

	private float minScale;

	public float speed;

	// Use this for initialization
	void Start()
	{
		minScale = transform.localScale.x;
		growing = true;
	}

	void FixedUpdate()
	{
		Manager.Enemy.Knockback = true;

		if (growing)
		{
			transform.localScale = Vector3.Lerp(transform.localScale, new Vector3(maxScale, maxScale, 0.1f), speed);
			print(maxScale + "," + transform.localScale.x);

			if (maxScale <= transform.localScale.x)
			{
				growing = false;
				print("should stop growing!!");
			}
		}
		else
		{
			if (minScale < transform.localScale.x)
			{
				transform.localScale = Vector3.Lerp(transform.localScale, new Vector3(minScale, minScale, 0.1f), speed);
			}
		}
	}
}

The if statement is only called if growing = true
and on the 29th line it is set to false and no where in the rest of the script is it being reset to true.

hope this was helpful