I am concerned about the fact that you are not using a GIST index. ExposureData.geography is already a geography point and it does not need to be casted. Why is not SiteData.location of type geography?