We've some items that always need to be shipped Overnight, to achieve this we have set our Shipping Calculation to Use Individual Item Shipping Costs and also set FilterOutShippingMethodsThatHave0Cost to true, hence for those products we set the price only for overnight method and left the other methods set to 0, by doing this we we're able to show only those shipping methods for those specific items.
On the other hand we set the FreeShippingThreshold to 100 and the ShippingMethodIDIfFreeShippingIsOn to 1,2,6 which stands for Ground,Standard Overnight, 2nd Day. However if we set FreeShippingAllowsRateSelection to true it will charge for the shipping even when the total amount is over FreeShippingAllowsRateSelection and we are selecting one of the free shipping methods in ShippingMethodIDIfFreeShippingIsOn . You may see here how the selected method is being shown as FREE, however it's actually charging for the shipping. If we set FreeShippingAllowsRateSelection to false it works just fine but we need the customers to be able to select other methods in order to receive the product earlier.