Object # inspect будет вызывать to_s, если доступно. Я не думаю, что поведение изменилось.
Я запускаю вашу программу на 1.9.2 и 1.8.7 и не вижу никакой разницы.
$ rvm inspect.rb 1.9.2,1.9.1,1.8.7
info: 1.9.2 (ruby-1.9.2-p0): ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-linux]
ToSClass to_s called
ToSClass to_s called
InspectClass inspect called
#<InspectClass:0x00000001941c80>
BothClass inspect called
BothClass to_s called
info: 1.9.1 (ruby-1.9.1-p378): ruby 1.9.1p378 (2010-01-10 revision 26273) [x86_64-linux]
ToSClass to_s called
ToSClass to_s called
InspectClass inspect called
#<InspectClass:0x000000011594b8>
BothClass inspect called
BothClass to_s called
info: 1.8.7 (ruby-1.8.7-p302): ruby 1.8.7 (2010-08-16 patchlevel 302) [x86_64-linux]
ToSClass to_s called
ToSClass to_s called
InspectClass inspect called
#<InspectClass:0x7ffd795afd60>
BothClass inspect called
BothClass to_s called