Had a look, and have had as little luck as you have had. Is there any reason why you can't just use LCDUI instead of LWUIT? If you must use LWUIT, can you not just create the image by passing down the path of the image instead?
Image imgLogo = Image.createImage("/logo.png");
Having said that, there should be no reason why the code you have doesn't work, especially considering it works perfectly for LCDUI.
Ah, you got stuck as i had. I can create image with just passing down the path of the image. But my focus here, I am trying to create image from byte array. It is more efficiency for resource used. I can't used LCDUI it because i have to refactored all of my code that based on LWUIT framework. So, Is this a LWUIT bug on Image.createImage with byte array..?. Because it works perfectly with LCDUI.