自分ところでは移動前にバッファローカルな dired-actual-switches を覚えといて
バッファ移動後に dired-sort-other でソートさせてる。
移動時に前のバッファを削除する&popwin対応も入ってるから適当に削ってくれ。

(dolist (f '(dired-find-file dired-up-directory))
(eval `(defadvice ,f (around ,(intern
(format "ad-%s-and-kill" f))
activate compile)
"移動前のディレクトリバッファ削除およびソート順序保持."
(let ((prev-buffer (current-buffer))
(switch dired-actual-switches))
ad-do-it
(if (and (not (eq prev-buffer (current-buffer)))
(eq major-mode 'dired-mode))
(progn
;; popwin 管理下の場合はバッファの差し替えを通知する
(if (and (boundp 'popwin:popup-buffer)
(eq popwin:popup-buffer prev-buffer))
(setq popwin:popup-buffer (current-buffer)))
(kill-buffer prev-buffer)
(dired-sort-other (setq dired-actual-switches switch))))))
))