
If you have an express agreement not to be charged, then the agreement follows your account unless and until you agree to a change in that agreement. Although it is likely that this missed your notice, it is virtually certain that Merrill sent you a notice of its account terms, which you likely thought was junk mail and discarded. Your retention of that notice without objection may constitute your agreement to those terms.
Call Merrill and ask them to reverse the fee because of your agreement with B of A. Move your account elsewhere.