松尾といいます。1.9で範囲演算子の===がうまく働いていないようです。

ruby 1.9.0 (2007-07-24 patchlevel 0) [i386-mswin32_80]
("a".."z") .include? "g" #=>true
(Time.at(0)..Time.at(100)).include?Time.at(50) #=>true
("a".."z") === "g" #=>false
(Time.at(0)..Time.at(100))===Time.at(50) #=>false

ruby 1.8.6 (2007-06-07 patchlevel 36) [i386-mswin32]
("a".."z") .include? "g" #=>true
(Time.at(0)..Time.at(100)).include?Time.at(50) #=>true
("a".."z") === "g" #=>true
(Time.at(0)..Time.at(100))===Time.at(50) #=>true

整数・小数の範囲は大丈夫なようです。
(4..8) === 5 #=>true
(4.0..8.4) === 5.1 #=>true