Thanks for your question. Though is seems logical, the surfaces tool is not currently the best solution for roofs. As you've found, the tiles need to be different for each face, mirrored from the ridge and using a single array that covers the entire roof makes this difficult to achieve. Moreover, using surfaces can adversely affect the instancing performance, and geometry behaves unpredictably if it is not over a surface.
At present our recommendation for solving roofs with RailClone is to use Clipping splines and X Rotation as discussed earlier in this thread, as it produces more efficient instancing and greater precision.
I hope that helps, please let me know if you further questions.