"Has anyone seen this being done anywhere?"
I think this is a fairly typical technique for exposing a regular Java class as an EJB.
"Is this spec compliant?"
Which spec? It should work fine.
"Do you think this is a good design?"
I don't think EJB is a good architecture so on that basis alone I'll say its stupid. The indiscrimitate remoting of objects results in crap performance. Most people using any kind of EJB successfully are using the local interfaces.
OTOH, given the constraints of EJB and the apparent desire to be able to use this class locally and remotely (why I have no idea) I think its a fine solution to the problem that you probably shouldn't have.