you need a new engine because your head gasket blew? how is that?
But i think the best place to get a used engine is
Bavarian Engine Exchange & Rebuilt BMW Parts it seems like avery reputable place, i have talked with some of the people there, they rigorously test their engines, and give you a warranty, and the prices aren't half bad.