Is there a difference between "几点" (jǐ​diǎn) and "什么时候" (shén​me​shí​hou)?
几点，as the 点 word implies, requires that your answer include a specific time, expressed in with reference to the clock, as in "five thirty pm" “ten minutes past six".

什么时候 is less specific, as 时候 means any time or period of time. Your answer can also be given just as if asked with 几点, but it can be anything else which bears sufficient information for answering your question, such as "tonight", "just now", "two hours later", "when my brother reaches home", "just before I sleep". Beyond the scope of 几点, 什么时候 extends beyond the limit of the day. Therefore, your answer can also be "two weeks ago", or "near the end of the year".

When asking questions, 什么时候 is a more flexible word, suitable for asking most questions, especially if your answer cannot be an exact time, e.g. "before I sleep" in the case that you don't sleep exactly the same time everyday. However, if you need the exact time, such as that of a meeting/event, 几点 would serve you better.