MySQL Solution to Sync 3 servers data
You are asking some good questions here but you are at an important crossroads and undoing an architectural mistake after implementing it is extremely difficult and costly.

The first question you should ask yourself is do you really need a multi-master topology? Most organizations and applications function well with MySQL asynchronous replication with a failover script in the event failover is necessary. 

If you decide a multi-master topology is the right choice, you need to confirm that your application and requirements are a fit. I see a red flag already with this. 


  I have 3 Geographically distributed servers which I want to sync them.


WAN replication with multi-master solutions like Group Replication (MySQL) or Galera (which is used by Percona XtraDB Cluster and MariaDB Cluster) have similar limitations. There are workarounds if your application is tolerant of additional latency and your application also does not process large, long-running write transactions. Which brings us to our next point...


  I want something hidden to the application layer, I want to INSERT/SELECT and etc... like before, without changing any line of my codes.


This is not always possible with multi-master database solutions. The way your application interacts with the database is critical to the success of the database layer. If your application code is written poorly, the database will behave poorly. 

I highly suggest you reach out to an expert to help you design an ideal solution for your situation. 

FULL DISCLOSURE: I work for Percona, but other vendors could assist here as well. 

Good luck!