By default, the list of current files is most recent first, oldest last, with the exception that the files visible in the current frame are put at the end of the list. A hook exists to allow other functions to order the list. For example, if you add:
(add-hook 'ido-make-buffer-list-hook 'ido-summary-buffers-to-end)
then all files matching "Summary" are moved to the end of the list. (I find this handy for keeping the INBOX Summary and so on out of the way.) It also moves files matching ‘output\*$’ to the end of the list (these are created by AUCTeX when compiling.) Other functions could be made available which alter the list of matching files (either deleting or rearranging elements.)