а как же
try
{
Microsoft.SqlServer.Types.SqlGeography.Parse(YourPolygon);
// everything is ok...
}
catch (Microsoft.SqlServer.Types.GLArgumentException _E)
{
// Polygon not ok
}
EDIT:
приведенный выше код используется в той же ссылке, которую вы разместили (внимательно посмотрите на исключение, которое они показывают) - проверка происходит, когда полигон анализируется в тип SqlGeography.
РЕДАКТИРОВАТЬ 2:
Добавлен правильный тип исключения.