Yes. You have to invoke the begin() and commit() but, using CMT would make your life a lot more easier unless you have a very good reason not to do so.
BMT makes shooting yourself in the foot really easy :-)
And more, be aware that MDB with BMT does not have any effect on message redelivery, while in using a MDB with CMT does, if calling a setRollbackOnly() on the MessageDrivenContext.