Swiatek fights off Muchova in thriller for third French Open title