1. Mesos dependency
2. Security (Firewall) settings
3. DNS settings (You need the FQDN to resolve from each part of the system)
4. Dynamic load balancing (ELB bridge, Nginx Bridge)
5. No control over the underlying cluster, so to actually scale your app, you will need to scale your cluster first.
Those are just off the top of my head. I am using Marathon every day but I still carry a lot of pain frm the first days/weeks of using it.