All three traits are about trying to get away with putting yourself first to get what you want. But they each have a different focus.
Machiavellianism is most about manipulation for personal gain.
Narcissism is most about believing you deserve admiration and to be treated differently than others.
Sociopathy is most about being cold and insensitive to others needs.