It looks like a bug, or at least a problem with scoping: the new element seems to be garbage collected when the parse finishes.
One way to avoid this is to add a copy
to the creation of the element:
my $newSummary = XML::Twig::Elt->parse( '<p><i>' . $text . '</i></p>' )->copy;