Функциональной разницы нет. Свойством по умолчанию для объекта Binding является Path, это означает, что если вы не укажете, какое свойство вы устанавливаете, то вы установите Path.
Это потому, что объект Binding имеет два конструктора, один по умолчанию и один, который принимает один строковый параметр. Когда вы передаете значение, не помечая его, это свойство будет перенаправлено на соответствующий конструктор, в случае Binding это устанавливает путь. По концепции он очень похож на работу атрибутов: вызов конструктора сопровождается необязательными параметрами, например:
[AttributeUsage(AttributeTargets.Class), AllowMultiple = false, Inherited = false ]
Вероятно в порядке сверх того, о чем вы на самом деле задаете вопрос, но я заметил, что между ними есть небольшая (и, вероятно, несущественная) разница. Поскольку я не могу объяснить это сам, я начал новый вопрос об этом здесь .