The three phrases have the same broad meaning but the connotations and usage are a little different.
1. 도 - even if/though", in the simplest sense. It's most natural in the present or future tense.
2. -는데도 - "even though" in present tense (can be what's happening now or a pattern). For past tense, use -ㅆ는데도.
3. -(으)ㄴ/는다고 해도 (often shortened to -(으)ㄴ대도) - "even if (subject) were to ...", "even supposing (action/event)" - it is subjunctive-like and thus fits future possibilities the best.
-(으)ㄴ/는다고 해도 is a quote form as you said, but it's not quoting what someone said but relating the speaker's own supposed condition, like "supposing such-and-such event, I/it/they still ...".
Because of this hypothetical nature, the main clause after -(으)ㄴ/는다고 해도 often ends in an indirect phrase too, as in 꼭 ...-다고 할 수는 없어요 (one can't always say ...), ...-다는 건 아니에요 (it doesn't necessarily mean that ...), etc.
- 일찍 일어난다고 해도 늦을 거예요 (O?) - Okay, but not the most natural (hypothetical sub-clause, too firm main one).
- 일찍 일어나도/일어나더라도 늦을 거예요 (O) - More natural, sub- and main clause go together well.
- 일찍 일어나는데도 늦을 거예요 (X) - Sub-clause sounds like a pattern, main one is specific future/prediction.
=> 일찍 일어나는데도 (자주, 걸핏하면) 늦어요 (O) - Both clauses are in present tense describing a pattern.
- 일찍 일어났는데도 늦었어요 (O) - Past tense case.
- 일찍 떠난다(고) 해도/떠난대도 두 시 전에 도착하긴 어려워요. (subjunctive-like in sub-clause, cautious conjecture in main)
- 다 잘된다고 해도 꼭 성공한다는 보장은 없어요. (similar)
- 아무리 열심히 해도/한대도/한다고 해도 그건 안 될 거예요. (when 도 or 한다고 해도 may be used interchangeably. 하는데도 won't work because it doesn't go with -ㄹ 거예요 )
These are relatively difficult phrases, and there might be some person-to-person usage variations, but this is the general idea. Feel free to ask if you have more questions.