"FYI, I still can upload code from arduino IDE into my DDIY arduino board."
So what is your code doing with D13? If it does not set it up as an output pin and make it go high & low, then the LED will not bllink.
The bootloader blinks the pin13 (port B, bit 5; pin 10 on the actual DIP chip) when it first starts. The most likely causes for not seeing an LED blink on a homemade board are: 1) getting the pin numbers confused: pin13 is not pin13 of the chip. 2) LED not wired correctly (does it blink from a sketch?) 3) having a different bootloader
Yes. It would be unlikely to get some other bootloader, and you'd most likely be aware of it, but the bootloader does have "variables" for which pin to blink, so it's possible that you could get one that had been compiled by someone for a different board, with the LED in a different spot (or omitted.) (This would not necessarily break sketch uploading.)
(This is much more likely to show up on other cpus like the ATmega644 or ATmega1284, because those were never strongly standardized as to which pins were what.)