Isotope and Knockout js having trouble removing dynamically added elements
===

I've been trying to get Isotopejs and Knockoutjs to work together. So, far Its been working swimmingly except for when I need to add elements to the dom and then need to remove them.

I've traced the problem down to inside this method:
ko.utils.setDomNodeChildrenFromArrayMapping = function (domNode, array, mapping, options, callbackAfterAddingNodes) { .. }

Which is calling this method
fixUpVirtualElements(lastMappingResult[lastMappingResultIndex].domNodes); 

The fixUpVirtualElements method is removing the dom node that I need to remove w/ isotope in the beforeRemove event; The foreach binding calls is not getting the element that needs to be removed.

I've read the notes for that method in knockout.. but I dont understand what they mean because I dont have any domain knowledge for what its talking about.

Can anyone please take a look at my latest jsfiddle and let me know why fixUpVirutalElements is removing the element I need to be passed to the beforeRemove event.

http://jsfiddle.net/evanlarsen/C5y6G/ 

Thanks,
Evan Larsen