Jason,
As I understand the rules here:
The number of live neighbors is always based on the cells before the rule was applied. In other words, we must first find all of the cells that change before changing any of them.
This means that you must have at least 2 boards in use. One that is the current state for checking and one that is being changed. After the change you can then make the changed one the current one.
In your case, it looks like you are only using one board which would explain why your oganisms are dying fast.
Regards,
Manfred.