La forma correcta de hacer su ORDEN es agregar una cláusula ORDER BY a su selección más externa. Cualquier otra cosa depende de los detalles de implementación que pueden cambiar en cualquier momento (incluso si el tamaño de su base de datos/tablas aumenta, lo que puede permitir que ocurra más procesamiento paralelo).
Si necesita algo conveniente para permitir que se realice el pedido, consulte el Ejemplo D en los ejemplos de Página de MSDN en CON :
WITH DirectReports(ManagerID, EmployeeID, Title, EmployeeLevel) AS
(
SELECT ManagerID, EmployeeID, Title, 0 AS EmployeeLevel
FROM dbo.MyEmployees
WHERE ManagerID IS NULL
UNION ALL
SELECT e.ManagerID, e.EmployeeID, e.Title, EmployeeLevel + 1
FROM dbo.MyEmployees AS e
INNER JOIN DirectReports AS d
ON e.ManagerID = d.EmployeeID
)
Agregue algo similar a la columna EmployeeLevel a su CTE, y todo debería funcionar.