It looks like german shipping is added when there is a value set for $_SESSION['germanShipping'] and $_SESSION['mylocation'] is set to "not canada".
So my guess is that the issue is on the page where $_SESSION['germanShipping'] is being set and that you have to make sure that value is properly cleared or at least not set when someone is from another area.