I my situation the BeforeDelete event is setting e.cancel to true and no other code is really getting run in the DeleteCurrentRow method. Since lnReturn is being initalized to 1, 1 is being returned.
Hope this helps.
In my source it was being initialized to 1, gues it must be old. I just now ran into the not getting set to 1 problem if the record was only marked as deleted. Thanks for the info.