Many medical imaging applications require the computation of dense correspondence vector fields that match one surface with another. Surface-based registration is useful for tracking brain change, registering functional imaging data from multiple subjects, and for creating statistical shape models of anatomy. To avoid the need for a large set of manually-defined landmarks to constrain these surface correspondences, we developed an algorithm to automate the matching of surface features. It extends the mutual information method to automatically match general 3D surfaces (including surfaces with a branching topology). We use diffeomorphic flows to optimally align the Riemann surface structures of two surfaces. First, we use holomorphic 1-forms to induce consistent conformal grids on both surfaces. High genus surfaces are mapped to a set of rectangles in the Euclidean plane, and closed genus-zero surfaces are mapped to the sphere. Next, we compute stable geometric features (mean curvature and the conformal factor) and pull them back as scalar fields onto the 2D parameter domains. Mutual information is used as a cost functional to drive a fluid flow in the parameter domain that optimally aligns these surface features. A diffeomorphic surface-to-surface mapping is then recovered that matches anatomy in 3D. Lastly, we present a spectral method that ensures that the grids induced on the target surface remain conformal when pulled through the correspondence field. Using the chain rule, we express the gradient of the mutual information between surfaces in the conformal basis of the source surface. This finite-dimensional linear space generates all conformal reparameterizations of the surface. Illustrative experiments show the method applied to hippocampal surface registration, a key step in subcortical shape analysis in Alzheimer's disease and schizophrenia.