山本です。CSVのdir.cでも同じなのですが、

E:/Borlandというディレクトリが存在する場合、DOSISHで

C:>ruby -Ks -e "puts Dir.glob('e:/B*').sort"
e:/Borland

C:>ruby -Ks -e "puts Dir.glob('e:/b*').sort"

C:>ruby -Ks -e "puts Dir.glob('e:/Borland').sort"
e:/Borland

C:>ruby -Ks -e "puts Dir.glob('e:/borland').sort"
e:/borland

となるのは変な気がします。

やはり、DOSISHの場合は rb_glob2 でフラグに
File::FNM_CASEFOLD を付加したいのですが、問題ないでしょうか?

それとも、statから返されたファイル名もCaseCmpすべきでしょうか。
それだと、"e:/hoge/hoge/hoge" を一気に stat に渡せず、
"e:/" "e:/hoge" "e:/hoge/hoge" ... と elem ごとに stat を
呼び出し比較する必要がありそうですが・・・