Você está confundindo algumas coisas.
Quando um servidor SMTP upstream envia uma resposta 550, isso significa que o servidor upstream está rejeitando seu e-mail; não está "sendo devolvido".
Seu servidor seria o único que geraria a mensagem de rejeição em resposta àquele 550.
soft_bounce = yes
na verdade influencia diretamente o acima, e defini-lo significa que seu servidor reage a cada resposta 5xx com uma ação deferida para nova tentativa (até o limite configurado).
Da documentação:
soft_bounce (default: no)
Safety net to keep mail queued that would otherwise be returned to the sender. This parameter disables locally-generated bounces, and prevents the Postfix SMTP server from rejecting mail permanently, by changing 5xx reply codes into 4xx.
Se você acha que isso não está acontecendo, inclua alguns registros que mostram isso.