Origami-based design methods enable complex devices to be fabricated quickly in plane and then folded into their final 3D shapes. So far, these folded structures have been designed manually. This paper presents a geometric approach to automatic composition of folded surfaces, which will allow existing designs to be combined and complex functionality to be produced with minimal human input. We show that given two surfaces in 3D and their 2D unfoldings, a surface consisting of the two originals joined along an arbitrary edge can always be achieved by connecting the two original unfoldings with some additional linking material, and we provide a polynomial-time algorithm to generate this composite unfolding. The algorithm is verified using various surfaces, as well as a walking and gripping robot design.