I think the simplest and most reliable way to determine if your extension is executed in the WinForms designer is to check the current process.
public static bool InVisualStudio() {
return StringComparer.OrdinalIgnoreCase.Equals(
"devenv",
Process.CurrentProcess.ProcessName);
}