HI,
Microsoft not recommend to keep the Mailbox and CAS role on the same servers.if we are installing both on the same servers we may face issue in Fail over clustering and Load Balancing.
These two components work well together in a two or three tier application model running on separate computers. Be aware that running these two components on the same computer is unsupported and is not recommended by Microsoft due to potential hardware sharing conflicts between Cluster service and Network Load Balancing.
Find the below link for your reference.
https://support.microsoft.com/en-us/kb/235305
DAG uses Failover Clustering to provide failover on the Mailbox Database level. Failover Clustering is not compatible with Network Load Balancing (NLB) and NLB is used for failover of the Client Access Server (CAS) role.
One thing important for CAS array, you had better create CAS array before you create database. Because Exchange 2010 Mailbox databases have an attribute called RpcClientAccessServer. If theres no CAS array in the Active Directory site when the database is created, this will be populated with the server FQDN of an Exchange 2010 CAS server in the Active Directory site. If you create the CAS array before any Mailbox databases, this attribute will instead be given the FQDN of the CAS array.