Thanks for your suggestion.
I think your code works correctly.
Frankly speaking, I'm working on Blosxom::Header inspired by Plack::Util::headers.
I'm trying to wrap existent subroutines in an object.
Although there are many ways to derive OO interface from procedual one, it's difficult to choose one of them :(