Update to this post. I had the same problem and learned what the issue is.
Short Answer: use ImageIndex only
Long Answer: Setting the ImageKey will set your ImageIndex = -1 which is used by the virtual mode. So do not use ImageKey entirely. I do not know why tho, this seems like an old problem that is never fixed by Microsoft