We present a system for creating and manipulating layered procedural surface editing operations, which is motivated by the limited support for iterative design in free-form modeling. A combination of sketch-based and traditional modeling tools are used to design soft displacements, sharp creases, extrusions along 3D paths, and topological holes and handles. Using local parameterizations, these edits are combined in a dynamic hierarchy, enabling procedural operations like linked copy-and-paste and drag-and-drop layer-based editing. Such dynamic, layered "surface compositing" is formalized as a Surface Tree, an analog of CSG trees which generalizes previous hierarchical surface modeling techniques. By "anchoring" tree nodes in the parameter space of lower layers, our surface tree implementation can better preserve the semantics of an edit as the underlying surface changes. Details of our implementation are described, including an efficient procedural mesh data struct...