el límite de palabras regex no funciona en ut8 en algunos servidores

Tengo un extraño problema. considere este código corto:

<?php
$reg =  '/(?<!\pL)(test)(?!\pL)/u';
$text='This is a test text';
$replace = 'test_replaced';

$newtext = preg_replace($reg, $replace, $text);

echo "Error: ".preg_last_error()."\nResult: ".$newtext."\n";

?>

En algunos servidores, la coincidencia de límites UTF8 no funciona. yo obtengo

Error: 0
Result: 

En la mayoría de los servidores todo funciona normalmente:

Error: 0
Result: This is a test_replaced text

Parece haber un problema con el límite de palabras como cuando uso\b&nbsp;en cambio el código funciona.

Ambos servidores usan php 5.2.13. ¿Alguna pista de lo que podría estar mal y cómo solucionarlo?