Actually the withdrawal is something that bugs me as well. However I view it like this. Siege would be arrayed pretty far from the line of battle. But in case the attack did come to them they did have a team of defense to protect them. This is how I view the damage. The damage they suffer isn't to the siege engines themselves but rather to the troops assigned to defend them. Only when the Defensive teams are overwhelmed do the siege engines get destroyed. In addition it isn't the machine that is withdrawing it is the enemy troops withdrawing back to their fortifications[after all the siege doesn't go to the enemy... the enemy must come to the siege].
Well everyone looks at the representations of the game differently...