There are quite a couple of reasons for this to happen. Let me sum up a few for you and see if it applies to your situation.
First of all; it’s request. The receiver can have its reasons and choose not to send you a receipt.
The receiver has the Receipts feature turned off.
For Outlook this can be configured in;
Tools-> Options-> E-mail Options…-> Tracking Options…
The request to send a Read Receipt is made when the message is being marked as read. If the receiver has the habit of not marking all his/her messages as read when reading it, then the prompt was never triggered to send the receipt to you.
The mail client the receiver uses must support sending out Read Receipts. Not all clients do, especially web clients often don’t offer this feature.
Even when the receiver sends out the Read Receipt, it could be that the mail server of the receiver doesn’t support it or disallows it to be forwarded to the Internet (configurable in Exchange by your mail administrator) and drops the Read Receipt.
Most ISPs do support sending out Read Receipts though but do not support Delivery Receipts. This is to prevent spammers from determining if a mailbox exists or not.
Your own ISP could be dropping the Read Receipts. Usually this is part of a Junk E-mail filter that they have in place and in most cases your ISP will put it in your Junk E-mail folder on the server so that Outlook won’t download it (in case of POP3). Login to your web based mailbox provided by your ISP and see if it is there and if you can configure the server based Junk E-mail filter.
Note: Keep in mind that from a practical point of view, a Read Receipt is nothing more than an acknowledgement that the email you have sent to the receiver got marked as read. The receiver can do this without actually reading the message