With a little investigation it appears that the m2designint.com
domain is outputting the same raw HTML as cashconnectrx.com
(except using their domain in place of yours) so they are not using frames or anything like that. Did you check if changing a word on your page changes the word on their site, either instantly or with a delay?
It's likely that this is a phishing site, set up to trick users into entering passwords or other personal information. In which case the SEO aspect is less important. I'm not sure of the best exact recourse, but legal action (or threat of legal action) would probably be the quickest and most effective method to be honest.
Interestingly, the domain owner's details are listed in the domain's whois record so you could email or call and ask (politely, of course) for an explanation.
Otherwise, since they are replacing your domain with theirs in the HTML code, using a canonical tag or something similar won't work (it would just get replaced with their domain). You may be able to create some obfuscated Javascript to redirect the user if they are not on your domain, something like:
<script>
if (document.domain != "cas"+"hcon"+"nectrx.c"+"om" && document.domain != "www.cas"+"hcon"+"nectrx.c"+"om")
window.location = "www.cas"+"hcon"+"nectrx.c"+"om";
</script>
EDIT: Actually it seems both domains resolve to the same IP address, and https://70.32.80.88/
also displays your site - in which case this should be easy to solve! I think you've set up your Apache Virtual Server incorrectly. You need to check your settings to only allow connections on your actual domain name, not a wildcard domain/IP.