using PayPal Express checkout, the work flow of the site is;
* add items to the cart
* choose checkout with PayPal,
* on the paypal site enter the billing and shipping details, paypal returns the user to your site
* The user is returned to the pp_confirm page on your site, where shipping can be calculated. the final order details are displayed for the user including shipping. and the user can confirm the order.
once the order is confirmed, it is processed through the gateway.
Shipping cant be calculated till the pp_confirm page, since the shipping destination is not known till then.