Some things aren't making 100% sense. Normally due dates are based on your LMP, even when using an ultrasound.
Your first ultrasound indicates a LMP of 24 August.Your second ultrasound (if using todays date) indicates 25 August for your LMP.
The problem is the due date doesn't match. Both of the above would put the due date around 1 June.
Backtracking, using the due date to determine your last period, I get 6 August.
If we go by the ultrasound dates, you wouldn't have gotten pregnant - unless you had sex after 25 August.
If we go by the due date, you would have had sex with your colleague on days 2,3, and 4 and your boyfriend on day 11. You normally would ovulate between about days 11 and 16 of your cycle. Sperm can survive up to about 5 days. It is UNLIKELY that your colleaque would be the father. You would have been near PEAK FERTILITY when you had sex with your boyfriend and HE is the likely father.
Unfortunately you will likely need a DNA test to confirm paternity. Irregular periods make these estimates a bit "challenging."
Hope it helps. Good luck.
Gestation or gestational age is usually considered to be 40 weeks from the 1st day of the women's last period. This is almost 2 weeks before you'd ovulate. Remember too, due dates are approximate.
OK, I had used today's date when calculating your 2nd ultrasound. Using the date of your 2nd ultrasound I calculate an LMP of 6 August which matches your due date. In that case then yes, the 21/22 spotting may have been implantation bleeding. This all points to your boyfriend being the father.
It makes more sense now. A DNA test can confirm.
Hope it helps.