Does anyone have another idea for how to accomplish this?
It seems that (if the polygons were somewhat large) you'd decrease the accuracy of the interpolation by representing the polygon as a centroid. If the polygon value corresponds to the entire area of the polygon, wouldn't it be better to convert the edges of the polygon to points and then use those points for interpolation?
This way, the points would be closer to each other and the interpolation routine would not have to cover as much distance.
The spacing of the points along the edge of the polygon and the number of points the IDW/Kriging tool uses for interpolation would likely have a big effect on the interpolated values though, so this might not be a great option.
It would be great to hear if anyone else has another suggestion.