The image size is specified in the BNI file; it has been precidented to use BNI files to store WC3 icons of non-standard size. For my bot, I shamelessly stole the (nonstandard) BNI file from some other bot. The icons are not 28x14, and my bot is able to parse the file with no problem. The shen below is proof.
The logic for choosing an icon is much simpler if the icons are pre-rendered, and I want to use a BNI file for consistency. I've already got a targa, I just need to convert it to a BNI, and I'd prefer not to have to write my own tool to do so, since this is probably the only time I will ever use it.
[edit] Skywing, would you be willing to update your tool to allow creation of non-standard BNI files?
[edit2] FWIW, I've already got the logic down, but I'm using static bitmaps that I don't want to put in SVN.