PropertyInfo を取得する際、大文字小文字を区別して取得したい方は非常にまれだと思います。
大多数の大文字小文字を区別せずに PropertyInfo を取得したい方向けのお話です。ちなみに私も大文字小文字を区別せずに PropertyInfo を取得したい派です。
■ BindingFlags.IgnoreCase
BindingFlags.IgnoreCase が大文字小文字を区別せずに取得するフラグです。しかし、次のコードは期待通りに動作しません。
var property = type.GetProperty(propertyName, BindingFlags.IgnoreCase);
// property はnull。PropertyInfo が取得できていない。
期待通りでないこの挙動が仕様です。
■ 期待通りの動作をするコード
var property = type.GetProperty(propertyName, BindingFlags.Public | BindingFlags.Instance | BindingFlags.IgnoreCase);
何度も失敗すると思います、というか私が何度も失敗しています。次失敗したときに検索してコピペしましょう。