Thank you so much for the info, this is exactly the type of thing that I was hoping for. The problem is that on your shipping page is where you are setting the session variable. The trigger is set to same page load, but the problem is that the form that posts this value is set to go to your checkout page.
<form name="form2" method="post" action="checkout.asp">
You can either update the action of this form to be the same page or blank, this would make sure that the session variable is set correctly.
You can also leave it as it is and add in the set session value server behavior on the checkout page, you would set the trigger to any form post if you did it this way.