連想配列の並び順って確か保証されてなかったよなー、でも追加順なのかなと思って調べていたら、下記サイトのブログ記事を見つけました。
C#でHashtableのfor eachの順序
http://blog.mbc-net.com/index.php?itemid=14
この記事では、Hashtableを使っていたところで、Windows 7の64bitの環境になったら不具合が発生したそうです。
Windows XP/Vista 32 bit 環境は、追加された順番
Windows 7 64 bit 環境は、key のアルファベット順
ということで、連想配列の順序は保証されないと思って開発した方がいいみたい。