After some period of time, the bean will be passivated. At some later time it may be discarded. A lot of this is app server dependent. For example, on JBoss, the default is to passivate after 10 minutes and discard after 30 minutes. ejbPassivate is called when the passivation occurs, but you don't get called when the bean is discarded.
Calling remove on a stateless session bean does not get turned into a call to ejbRemove.
Also, calling create on the home interface of a stateless session bean does not lead to a call to ejbCreate. A container will create SLSB instances as it needs to. When it creates one it will call ejbCreate, and then put that instance in a pool. If ejbCreate is called at the same time you call create, it is just a coincidence. When the container no longer needs/wants the instance in the pool, it will call ejbRemove.