Verifique se você está usando uma consulta de atualização. Você só quer substituir a primeira ocorrência de '09', então você precisa informar a função de substituição.
Tente substituir ([yourfield], '09', '959', 1,1) que informa ao Access para substituir somente a primeira ocorrência da string '09' em [yourfield] começando pelo primeiro caractere.
Como apontado nos comentários, esta solução pressupõe que todos os seus números de telefone começam com um '09' principal. Se não, você terá que trabalhar com uma cláusula if:
iif (left ([yourfield], 2) = '09', substitua ([yourfield], '09', '959', 1,1), [yourfield])