Por que esse teste de unidade falha ao testar a igualdade DateTime?

Usando o NUnit 2.2 no .NET 3.5, o teste a seguir falha ao usar o DateTime.Equals. Por quê?

[TestFixture]
public class AttributeValueModelTest
{
    public class HasDate
    {
        public DateTime? DateValue
        {
            get
            {
                DateTime value;
                return DateTime.TryParse(ObjectValue.ToString(), out value) ? value : new DateTime?();
            }
        }

        public object ObjectValue { get; set; }
    }

    [Test]
    public void TwoDates()
    {
        DateTime actual = DateTime.Now;
        var date = new HasDate {ObjectValue = actual};
        Assert.IsTrue(date.DateValue.Value.Equals(actual));
    }
}

questionAnswers(5)

yourAnswerToTheQuestion