I figured it out:
I had to use Clone Graph to so that it didn’t link the macros.
UEdGraph* DuplicatedGraph = FEdGraphUtilities::CloneGraph(SourceGraph, TargetBlueprint);
DuplicatedGraph->Rename(*MacroName.ToString());
FBlueprintEditorUtils::AddMacroGraph(TargetBlueprint, DuplicatedGraph, true, nullptr);
Also had to rename it.