Since you mentioned you're looking at Exchange: make sure that you download our newest Exchange template (there's a link to it in the iApp downloads page). It's fully tested and supported, and is much more capable than what ships with TMOS.
But what happens when there are different virtual servers allready running on the device? Will it overwrite them?
The rules for duplicate virtual servers still apply: you can't have them unless they're in a different route domain. If you already have a virtual server with a given IP:port destination and you try to instantiate an iApp service that wishes to create another with the same destination, the iApp service creation will fail and the original one will not be overwritten. If you want the iApp to replace the existing virtual, you'll have to delete the original first.
If you're looking for a safe way to migrate from a legacy set of virtual servers to an iApp solution, we recommend a parallel deployment alongside the current one. Once you're ready to cutover, switch DNS to point to the iApp-managed resources, and once you're happy with things, remove the old services.
And can I use routing domains to use different iApp instances for different applications?
Yes, you can use route domains to allow for multiple instances of the same addresses in the same way that you can for the rest of the configuration. And if you want to stamp out multiple instances of an iApp that use different destinations, you don't even need route domains as they'll just coexist.
Or do I have to run one iApp per load balancer pair?
Nope, you can run as many as you want as long as you don't need multiple instances to use the same IP:port in the same route domain.