Surface matching is a common task in computer graphics and computer vision. In this paper, we introduce a novel algorithm that aligns scanned point-based surfaces to the related 3D model without assumptions about their relative position and orientation. Our method estimates the transformation that matches two surfaces from a pair of corresponding points using their surface positions, normals and principal curvature directions. This approximate alignment is used as the input of ICP algorithm to refine the registration of the surface to the model. The algorithm is easy to implement and proved to be reliable even with coarse point clouds. Furthermore, with the help of multi-scale feature points, we can improve the reliability of our surface matching algorithm.