De que outra forma poderia funcionar? Se ele aplicasse a ordem depois de selecionar os 18 registros, você obteria os 18 principais registros na ordem padrão, que então classificaria.
Você pode obter um melhor desempenho inserindo todos os valores em seu
IN
declaração em uma tabela temporária e, em seguida, juntando-se à tabela temporária.