First off, what is the exact reason for bitbanging SPI here? If it falls under something like "I want to see if I can/I want to learn something/for fun/etc" then we are in the baremetal forum, and those are very good reasons here. If it is just to get access to the SD card by any possible means, then I believe it will be easier to write a driver for the eMMC controller that is connected to the card.
If we assume that you are in the first group, the first thing I would recommend for a project like this is to get a USB based logic analyzer. If your code does not behave as you expect, this can both be because the command/data you sent has a problem, or it means that the data sent from the SD card is not read properly from your software. A logic analyzer tells you which one it is. I prefer the USB based ones because they let you save the trace to the PC memory, enabling very long traces. This one is cheap: http://www.dx.com/p/logic-analyzer-w-du ... ack-148945
About your question:
Why do you think that setting DI (GPIO49) low will result in the SD card pulling DO (GPIO50) low?
Did you set CS (GPIO53) low? Devices attached to SPI will normally not drive any output pins unless their CS (Chip Select) is low. That way multiple devices can be connected to the same SPI channel. This is also the reason for the requirement of pull-up resistors.
Are you actually shifting the clock with your data? The SD card cannot do anything unless you
Before you can actually get any response from the SD card, you need to send a number of clock pulses and a CMD0 while CS is low among other things. The sequence is described here: http://nerdclub-uk.blogspot.dk/2012/11/ ... -card.html
and some more details here: http://www.dejazzer.com/ee379/lecture_n ... d_card.pdf
Note also that the initialisation sequence of an SD card must run at a maximum clock frequency of 400kHz. This means that there should be a minimum of 1.25us between each time you change the value of the clock pin. If you run faster than this, chances are that the initialisation will fail, and you will not see any response from the card. The logic analyzer allows measurement of this time.
If you get a logic analyzer on your system, then a good way to proceed would be to use it to develop your transmitting side first. Verify that you can send well-formed SD-SPI commands with CS low before you plug in the SD card and write code to decode the responses. That way you can break down the system a bit.
Edit: Note that SD cards use SPI mode 0. There are timing diagrams on page 2 in the PDF I link to showing what that means for the clock signal polarity, when to read MISO (Master In Slave Out) and when to shift data into MOSI (Master Out Slave In).