Cohen is worthless as a witness.
You don't find him credible. But that does make him worthless.
He is more credible than Trump. He has given evidence admitting his own criminality. You don't think that is trustworthy? You think he is lying so that he can go to jail?
I assume your argument is that he is telling the truth about his own conduct, but lying about Trump? Maybe. But, if you ask both men to give their versions - I am probably going to side with Cohen, based on overall trustworthiness.
And, if you have corroborating evidence that supports Cohen (or in this case, Cohen corroborates other evidence) - then Cohen becomes a very good witness for the prosecution.
People get convicted on the testimony of people far less trustworthy than Cohen - every single day.
It is an error to dismiss a witness, just because you don't like what they have to say.