Cómo usar LINQ para seleccionar un objeto con un valor de propiedad mínimo o máximo

Tengo un objeto Person con una propiedad Nullable DateOfBirth. ¿Hay alguna manera de usar LINQ para consultar una lista de objetos Person para el que tiene el valor DateOfBirth más antiguo / más pequeño?

Esto es lo que comencé con:

var firstBornDate = People.Min(p => p.DateOfBirth.GetValueOrDefault(DateTime.MaxValue));

Los valores DateOfBirth nulos se establecen en DateTime.MaxValue para descartarlos de la consideración mínima (suponiendo que al menos uno tenga un DOB especificado).

Pero todo lo que hace por mí es establecer firstBornDate en un valor DateTime. Lo que me gustaría obtener es el objeto Persona que coincida con eso. ¿Necesito escribir una segunda consulta así:

var firstBorn = People.Single(p=> (p.DateOfBirth ?? DateTime.MaxValue) == firstBornDate);

¿O hay una forma más ágil de hacerlo?