It's unclear what is desired. The plot has two "contours", better called by the alternate term, "level set" in this case: A single point, the center, (level = distance of zero); and everything else but the center (level = distance of one). This holds for ${\Bbb R}^n$, for any dimension $n>0$. "Continuous" plotters like ContourPlot[] won't plot single points. With discrete sampling, there's a good chance that the one point excluded in level 1, the center, will be missed unless care is taken to ensure that the center is one of the sample points.
According to the MathWorld article cited by the OP in a comment,
the metric is not the function the OP include but simply the following:
dd = Function[{x, y}, Boole[x != y]];
Here are two approaches to approximating the level sets, with two alternatives for legending determined by the Contours option.
dd = Function[{x, y}, Boole[x != y]];
center = {Pi, Sqrt[2]};
domain = center + {{-2, 2}, {-2, 2}};
ContourPlot[dd[{x, y}, center]
, {x, Sequence @@ First@domain}, {y, Sequence @@ Last@domain}
, Contours -> {0, 1}, Exclusions -> None, MaxRecursion -> 6,
PlotLegends -> Automatic]

dd = Function[{x, y}, Boole[x != y]];
center = {1, 1};
domain = center + {{-2, 2}, {-2, 2}};
sampling =
Outer[List, Subdivide[Sequence @@ First@domain, 100],
Subdivide[Sequence @@ Last@domain, 100]];
ListContourPlot[Map[dd[#, center] &, sampling, {2}],
DataRange -> domain, Contours -> 1, PlotLegends -> Automatic]
