Try e.g. small vol and large drift etc.

Hmmm. The drift is not in the BS equation, so how would I test that? By Girsanov's Theorem the drift is not present. I'm pretty sure this: Girsanov theorem - Wikipedia, the free encyclopedia theorem lets you get rid of the drift term in BS.

Hold on, my lattice is generic. It let's the user choose the type of data the lattice can hold. Isn't that the definition of a generic class? So does that mean I can program the algorithms you mentioned? Should I make the program work for an arbitrary lattice, trinomial, monomial etc?If your lattice is generic you can do all these with no change of code

Very good but only (less than) half the battle. 90% is maintaining software as it is extended, debugged, falls apart down all the years etc.

Good point. Especially with these crazy fast computers (the age of quantum computing: see The jaw-dropping promise -- and brain-twisting challenge -- of quantum computing). Probably means design will far outweigh efficiency aspects in the future.