Me parece que la expresión no está mal, pero tus datos de prueba si:
Código PHP:
$texto_mas = +2050;
echo $texto_mas;
Ahí no estás especificando de ningún modo que se trate de una cadena, el operador + se evalúa junto al número y resulta en un 2050 absoluto.
Pero si usas comillas:
Código PHP:
$texto_mas = '+2050';
echo $texto_mas;
Ahí si tienes el signo de mas, es una cadena.
En el otro caso que decías funciona, es que un número negativo si conserva su signo.