My HTC Hero uses both T-mobile and Orange in the UK, since February. However when my phone is connected to an Orange mast instead of a T-mobile mast I don't get 3G as it says that I am roaming.
If I switch on the option to allow data roaming, will I get any additional charges?
See the FAQ, particularly the billing section. You won't get charged for turning on data roaming and connecting to an Orange network, but you need to remember to turn it back off before roaming on any other networks to avoid charges.
Also, the FAQ mentions that it's only for calls and text messages right now, but it's not clear why they would also mention the data roaming setting if that's the case, so YMMV. Regardless, you'll likely be limited to 2G since 3G is typically on a carrier specific frequency.
And of course, all of this may change if AT&T completes their acquisition.