"Where is the restaurant?"
Correct. こ<sub>/そ</sub>/あ<sub>/ど</sub> words change meaning depending on the ending syllable. ~れ is an object; ~こ is a location; ~の is an object and must be followed immediately a noun. One special rule is if there are exactly 2, it changes to ~ち. A weird thing to this foreigner is, it's あれ, あの, and あち for objects, but あそこ for location.
Famous examples: これはペンです。This is a pen. どれがペンですか。Which is the pen? どこがペンですか。Where is the pen? あのペンはあそこです。That pen is over there. どちがぺんですか。Out of 2 objects, which is the pen?
You're right, but I just wanted to add that you can just leave out は in speech, if you replace it with a pause. Typically that's written as 「レストラン、どこですか？」 and though it is technically grammatically incorrect, it follows a widely accepted convention. The meaning is pretty unambiguous too, unless you are talking to someone named レストラン.
Say your friend was trying to take you to a restaurant, but is having trouble finding it. You are walking along, and have changed the conversation, but suddenly see what you believe is the resaturant you're both looking for.
Could you use そこin this same sentence structure to mean "Is that the restaurant?" (ie. "レストランはそこですか？”). As opposed to something like ”それはレストランですか？” Which is more appropriate? Or would you use something entirely differently?
In a less formal conversation, more casual, 「レストランはどこ」would be correct. Using a rising tone at the end of the sentence would indicate a question. Adding か at the end is grammatically incorrect from the Japanese view point. You can say 「レストランはどこか」and people will understand what you are trying to say, but they will look at you funny in a thought that maybe you don't know grammar well.
Your suggested alternative is correct, but I just wanted to point out that 「レストランはどこか」 can be a valid Japanese sentence, though it has a different meaning.
どこか follows the pattern of adding か to question words to make vague statements. Since どこ means "where", どこか becomes "somewhere". Similarly, 何 = "what (thing)" so 何か = "something", and どれ = "which (of these things)" so どれか = "one of these things".
Hence, the sentence 「レストランはどこか」 is the very unhelpful statement "The restaurant is somewhere."