Я реализовал ниже RandomDate, но всегда сохраняю значения закрытыми для "От", я, вероятно, что-то пропустил здесь.
public static DateTime GetRandomDate(DateTime from, DateTime to)
    {
        var range = new TimeSpan(to.Ticks - from.Ticks);
        var rnd = new Random();
        var randTimeSpan = new TimeSpan((long)(range.TotalSeconds - rnd.Next(0, (int)range.TotalSeconds))); 
        return from + randTimeSpan;
    }
