You can’t use aliased columns in a WHERE clause. You can try using a derived table. Perhaps something like this (sorry, not tested):
SELECT *
FROM (
SELECT SQRT( POWER( cast(Program_Latitude as float)
- cast('41.5126237' as float), 2)
+ POWER( cast(Program_Longitude as float)
- cast('-81.6516411' as float), 2)
) * 62.1371192 AS DistanceFromAddress
from tblProgram
) mytable
WHERE DistanceFromAddress < 2