Well, on ruby 1.9.0
(ftp://ftp.ruby-lang.org/pub/ruby/binaries/mswin32/ruby-1.9.0-20070709-i386-mswin32.zip)
 it is even more slower:

>C:\bin\InstantRails\ruby1.9\bin\ruby test_flatten.rb
      user     system      total        real
original flatten 24.000000   0.000000  24.000000 ( 24.031000)
self-made flatten  0.046000   0.000000   0.046000 (  0.047000)
true
      user     system      total        real
original flatten 23.719000   0.000000  23.719000 ( 23.734000)
self-made flatten  0.047000   0.000000   0.047000 (  0.047000)
true

>C:\bin\InstantRails\ruby1.8.6\bin\ruby test_flatten.rb
      user     system      total        real
original flatten 20.484000   0.000000  20.484000 ( 20.485000)
self-made flatten  0.063000   0.000000   0.063000 (  0.062000)
true
      user     system      total        real
original flatten 20.235000   0.000000  20.235000 ( 20.266000)
self-made flatten  0.062000   0.000000   0.062000 (  0.078000)
true