There exist categories for which you can have bimorphisms which are not isomorphisms. For example, the category '2' with two objects, a and b, and (in addition to the reflexive morphisms) one morphism (call it 'f') between them from a->b (and no morphism from b->a). f is mono and epi but not iso.
A category in which every morphism which is mono and epi is iso is called a 'balanced' category.
According to http://ncatlab.org/nlab/show/balanced+category, "In an “unbalanced” category it is frequently the case that the monomorphisms, the epimorphisms, or both, are not the “right” notion to consider and should be replaced by their extremal, strong, or regular counterparts."