バイナリでの文字列置換をしています

$str =~ s/\xFF/\x00/g;

という書き方ならうまく行くのに、

$src = '\xFF';
$dst = '\x00';
$str =~ s/$src/$dst/g;

ではうまく行きません
$srcの部分は思い通り検索できるのに、
$dstの部分はバイナリではなく \x00 という文字列に置換されます
どうすればいいですか