Ahí tienes otro problema, no debes usar la variable $match para hacer el reemplazo sino los mismos marcadores que provee PCRE para ello:
Código PHP:
$foo = 'abc';
$bar = preg_replace('/b/', '@\\0@', $foo);
echo $bar; // a@b@c
Por favor, consulta el manual.