Kain couldn't be faulted for mistaking Galadriel for a boy. Really, it all came down to cultural differences and mistranslations between the dragon tongue and the language of the Celestial Empire.
How was Kain supposed to know that in the dragon language, there was no distinction between the words for "sons" and "daughters"?
Most dragons simply referred to all their offspring as "sons" when speaking to humans for simplicity's sake.
How was Kain supposed to know that among the Dragon Kings, there was no concept of a "princess," and that the firstborn heir—regardless of gender—was titled "*Atherranai"*, a term that loosely translated to "prince" in human languages? To make matters even more confusing, any additional children weren't given princely titles at all unless the firstborn died.
Vauleth, however, was far from understanding, his offence on Galadriel's behalf evident.