一方、2月28日または3月1日を表すDateTime・DateTimeOffsetに対してAddYearsメソッドを用いる場合は、その年がうるう年となるか否かに関わらず、結果は2月28日または3月1日となります。

DateTime/DateTimeOffset.AddYearsで2月28日・3月1日のn年前・n年後の日付を求める場合の動作
Imports System

Class Sample
  Shared Sub Main()
    Dim baseDate As New DateTime(2012, 2, 28)

    Console.WriteLine("{0} + 1 years = {1}", baseDate, baseDate.AddYears(+1))
    Console.WriteLine("{0} - 1 years = {1}", baseDate, baseDate.AddYears(-1))
    Console.WriteLine("{0} + 4 years = {1}", baseDate, baseDate.AddYears(+4))
    Console.WriteLine("{0} - 4 years = {1}", baseDate, baseDate.AddYears(-4))
    Console.WriteLine()

    baseDate = New DateTime(2016, 3, 1)

    Console.WriteLine("{0} + 1 years = {1}", baseDate, baseDate.AddYears(+1))
    Console.WriteLine("{0} - 1 years = {1}", baseDate, baseDate.AddYears(-1))
    Console.WriteLine("{0} + 4 years = {1}", baseDate, baseDate.AddYears(+4))
    Console.WriteLine("{0} - 4 years = {1}", baseDate, baseDate.AddYears(-4))
  End Sub
End Module
実行結果
2012/02/28 0:00:00 + 1 years = 2013/02/28 0:00:00
2012/02/28 0:00:00 - 1 years = 2011/02/28 0:00:00
2012/02/28 0:00:00 + 4 years = 2016/02/28 0:00:00
2012/02/28 0:00:00 - 4 years = 2008/02/28 0:00:00

2016/03/01 0:00:00 + 1 years = 2017/03/01 0:00:00
2016/03/01 0:00:00 - 1 years = 2015/03/01 0:00:00
2016/03/01 0:00:00 + 4 years = 2020/03/01 0:00:00
2016/03/01 0:00:00 - 4 years = 2012/03/01 0:00:00

うるう年かどうかの判別については§.うるう年を参照してください。