RFC1178 gives:
Don’t expect case to be preserved.
Upper and lowercase characters look the same to a great deal of
internet software, often under the assumption that it is doing
you a favor. It may seem appropriate to capitalize a name the
same way you might do it in English, but convention dictates
that computer names appear all lowercase. (And it saves
holding down the shift key.)
I wouldn’t blame the SDK for normalizing the name, but rather whatever software fails to actually look it up. Or possibly the configuration thereof; perhaps it expects or works best with lowercase entries.
DNS in general should be case-insensitive with lowercase as the normal representation (RFC952, RFC4343 etc).