Step one, determine what .kl and kcm.bin the Nook is trying to load.
You will see this if you have ADB and logcat running when you connect.
It will try to load one based on the VID/PID.
It will tell you the exact name of the file.
Probably your naming is different.
I ran into this already.
I didn't bother, I just use qwerty.kl and qwerty.kcm.bin
These are the defaults when there is no VID/PID specific files.
If your kcm.bin is correct it should have the UTF-16 values inside.
The format is pretty simple. After the header (32 bytes) it's like:
You can just enter the little-endian UTF-16 values using a hex editor.