Q:

Adicionar propriedades ao elemento [Node]

Há algum problema em adicionar propriedades personalizadas diretamente no elemento [Node]? Por exemplo:
document.getElementById('minhaDiv').minhaPropriedade = 'teste';

Estou utilizando o Firefox e não tive problemas quanto a setar ou obter a propriedade, mas é algo que devo evitar? Por quê?

A:

É algo que geralmente se recomenda evitar. Principal motivo: você pode acabar causando uma colisão de nome com uma propriedade que venha a ser futuramente implementada no DOM. Então, mesmo que hoje o código não cause nenhum problema, no futuro ele pode vir a causar.
Outro aspecto é que isso é meio caminho andado para mais tarde você ter vontade de estender o DOM, isto é, estender os protótipos de objetos nativos do DOM como HTMLElement. Isso não é uma boa ideia pois esses objetos são muito mais suscetíveis a peculiaridades que variam de acordo com a implementação – e é a própria especificação da linguagem que dá essa liberdade aos implementadores dos chamados host objects. 
Para maiores detalhes sobre tudo isso, a grande referência é o seguinte artigo do Kangax: What's wrong with extending the DOM? Embora o artigo seja de 2010, quando o panorama dos browsers era outro, a especificação da linguagem não mudou (ainda), então boa parte do que está dito lá continua válido – exceto, talvez, pelas análises de performance e de bugs específicos de determinados browsers.

