A contact form is setup by the company to explicitly get feedback. Contact forms are also often somehow protected against automatic submissions or at least any automatic submission need to be specifically adapted to the companies specific contact form. That's why such contact forms are not much used to deliver spam, at least not in mass. And that's why not much filtering for spam is done there. And, contact forms usually don't result in an email to the company with the address you've gave as sender. If the contact information are delivered by mail at all (often they don't), these emails are usually from a fixed sender and only include the information about the claimed sender and the message he left in the body of the mail.
With email instead there is no implicit rate limiting, no customization needed for specific recipients etc. This makes email a cheap way for spamming and because of this it is heavily used for spamming. And this is even more true for widely known email addresses like the contact email usually published by companies. To fight the amount of spam companies therefore employ heavy filtering so that most of the spam gets automatically detected. This might also result in false positives, i.e. non-spam messages treated as spam. This is especially true if these look like spam or they use similar delivery infrastructures as spam, like not using the delivery infrastructure of a major mail provider but instead having setup their own delivery infrastructure.