For me the above wasn't enough. I needed ways to keep references to compiled chunks of Lua code so that calling them often didn't require recompiling strings of code over and over. Also needed to sandbox the scripting environment, and easily load DLL's. As explained in the docs for lua-icxx, I could not find any other lib that did that.
I also really like how LuaTempResult gives access to any number of return values on the stack, with automatic type inference (for basic types). Potentially some conversion functions could also be defined for UDT, but that's slipping into domain of supporting UDT natively in Lua-icxx, I rather combine lua-icxx with SWIG (or other) for that (which is what I actually do).
Here is how some of your example code from LuaClassBasedCall would look like with Lua-icxx (have not had time to run this, so may need some tweaking):