Yeah, I was thinking I could use the alias, but that does not work. That throws an exception about no value given for one or more parameters, so that alias...well, it is no longer an alias by the Order By phrase.

In any case, it works with the full mess in the Order By statement. Whether it does the calculations twice or not, I can't say, but there are so few records returned that it doesn't really matter.