Planning a cluster - please sanity check

I have five co-located asterisk 1.8 servers ( 1-5) and five customers. Each customer only sees/uses their own server.
Customer A needs PSTN access so server 1 has a PRI card. Servers 4 & 5 have Transcoder cards.

We have received requests from customers to be able to talk to each other and want to implement redundancy so I am looking at changing this to a cluster but maintaining the current setup as preferences for load balancing so that Customer 3 clients will continue to prefer Server 3 unless it goes down in which case clients will fail over to another.

Please sanity check what I have planned so far:

  1. Implement DNS Srv records for clients to use. Customer 1 clients will connect to which will then point to with highest priority, with lower priority … etc
    Customer 2 clients will connect to which point to another set of SRV records where has the highest priority

  2. Servers will communicate with IAX2 and use DUNDI to know which clients are registered with other servers.

  3. All servers will have essentially the same sip.conf and Dialplans with each customer having a context tree.

  4. Dialplans will forward outgoing PSTN calls to the physical server(s) with PRI card

  5. DialPlans will forward incoming PSTN calls to the correct server/client using DUNDI

Q. Will this work as described above without 3rd party sw?
Q. Will meeteme work across servers?
Q. if a customer 1 client registers on Server 3 for some reason when server 1 is operational then they will probably re-reg with Server 1 - does that cause issues during a call?
Q Is there any way to route calls based on the need for transcoding or should I just pony up for transcoder cards for everyone?
Q. Can I really keep the dialplans almost identical, making administration much easier. Eg if I add customer 6 can I copy and paste their dialplan to each server.

Thanks for your input.