It's a widely-used and widely-studied method, so the popular implementations are pretty optimized and the toolkits extensive. Unless you have some fundamental insight/optimization specific to your problem, I don't think it's actually worth it to roll your own. Easier to just start with something open sourced and build a small module on top.
Nvidia is rolling FEM into Physx[1] - exciting stuff! GPU-accelerated FEM is going to be a game changer if they didn't cut too many corners in the pursuit of speed.
I wonder if it can be coupled with FleX...
[1]: https://news.developer.nvidia.com/announcing-nvidia-physx-sd...