The free shipping rule is the only one that I have trouble with and doing some testing I can see why. It is not that the rule is not triggering it is just that there is nothing to show. The cart display is setup to only display the shipping line if the value is greater than 0.
Since you are not charging for the shipping in this case it will not show as a charge in the cart. How would you like this part to work from the perspective of the user that will be interacting with the cart? Would you like it to show $0.00 for the shipping when this rule is triggered? If so you will need to customize things a little. If you set a session variable in the charge rule you could check this session variable to show the line for free shipping. Let me know if this is the way you would like to go and I will help you with what I can.