Thanks for that haggisv

Seriously though, it's a good question and one that deserves an article of it's own, which I'll have to get around to soon! Some quick tips in the meantime though.
1. Learn to serve better - if you know how to do the serve itself it gets easier to pick what serve is coming at you.
2. Make sure that you are actually seeing their bat contact the ball - if not it's much harder to know what serve is coming.
3. Long serves should be looped - your heavy topspin will help make it less important what is on the ball. When in doubt on a long serve, go for medium depth with as much topspin as you can - under no circumstances swing slower - you'll be more affected by their spin.
4. Scout your opponents - certain players have favourite serves, and usually a couple of special serves saved for tight situations. Knowing what is likely to come at you can help a lot when you have to make a guess. If you can face the player when he's serving to another opponent, it's a good time to try to guess what he has just served, and see if you got it right!
5. Watch the bounce - backspin sits up and slows down off the table a bit more, topspin tends to kick forward and lower. You need good eyes for this though.
6. Don't return too many short services with float - you get more affected by the spin. Choose to push or flick and give it some spin of your own to help your control.
Greg