Android OS 4.0 - USB host mode support for external keyboard
USB Host Mode was introduced with Honeycomb (Android 3.1, see changelog. This clearly explains why it failed on your Gingerbread (2.3) device -- and also should answer your question whether it is supported by Ice Cream Sandwich (Android 4.0) and above: Yes, it should work. As ov1d1u explained in his answer, it will require a "USB OTG cable" (OTG stands for "On-the-Go"). Does fine on my Cat Stargate 2 btw :)