CornedBee is right, I have had that problem before. It would be better to use a return type of int and check for 0 or !0.
You would think it wouldn't matter, but inexplicably VB seems to think that this function always returns true.