Na had taken a narrow lead into the final round in Naples and was pushed all the way until the closing holes by fellow countryman So, who drew level before a mistake on the 14th dropped her back.
Na went birdie-par on the last two holes to win by two shots on 14 under.
Home player Brittany Lincicome was a shot further back from So in third on 11 under par.
Fourth went to Australian Karrie Webb on 10 under and in fifth was Japan's Ai Miyazato on nine under after she finished a shot ahead of France's Karine Icher.
The United States' Christie Kerr, Spain's Azahara Munoz, China's Shanshan Feng and Sweden's Anna Nordqvist tied for seventh on seven under.