I think that you got pregnant by the second guy. If your doctor gave you a due date of January 21, and if he did it from the information in an ultrasound, the conception date for January 21 is April 30, not April 18. Did you think that the "weeks pregnant" count begins on the day of conception? It doesn't, it begins on the first day of your last period. (If you had regular periods.)
So let's assess this. You got a negative pregnancy test May 7, which would not have happened if you had gotten pregnant from the sex April 14, unless something was wrong with the pregnancy test. Not saying there couldn't be something wrong with the pregnancy test, but it tends to sugest you didn't get pregnant from Mr. April 14.
Your doctor told you something and from it you determined that you conceived on April 18. But that does not match your due date of January 21 which was evidently given to you by a doctor, not from you figuring things out all by yourself, and was given to you once the doctor saw your ultrasound, not just computed from the first day of your last period. The conception date from that due date is April 30. So, what part of all of this was given to you by a doctor and what part did you figure out by yourself?
A 15th-week ultrasound is not actually early from the point of view of using it to try to determine conception. You would have needed a 7th-week ultrasound. By the 12th week, measurements of the baby taken from an ultrasound can vary by +/- 7 days from average, and by the fifteenth week they can vary a few days more. (By your 40th week, they can be three weeks off.) But even given that, if the doc gave you the due date based on the ultrasound (and not on some wild hair of a date based on your irregular cycles), it doesn't seem like you can stretch back from April 30 to April 14. Maybe just barely, given that sperm can live up to 5-6 days in your system, but it doesn't sound like it.
Also, you "took two pregnancy tests" on May 7. Were either of them done with concentrated first-morning urine?
What did the doctor base the April 18 date on?