Descobri que o Redmine.pm não fornece a função DIR_MERGE para mesclar objetos de configuração. Veja detalhes na seção Criando e mesclando objetos de configuração de mod_perl
manual. Eu simplifiquei o exemplo dado porque eu preciso apenas do modo de substituição:
sub DIR_MERGE { merge(@_) }
sub merge {
my ($base, $add) = @_;
my %mrg = ();
for my $key (keys %$base, keys %$add) {
next if exists $mrg{$key};
# override mode
$mrg{$key} = $base->{$key} if exists $base->{$key};
$mrg{$key} = $add->{$key} if exists $add->{$key};
}
return bless \%mrg, ref($base);
}