Obviously if you scale a surface, you need to write the rules so that the area calcs drive a parameter to change the surface points or curves (possibly a recursive VB function that reduces the surface CV point z height's or something similar to reduce the curved surface area). Other than that it's a pretty vague kind of question....