A confusão é normal porque o 'se' e o 'si' funcionam em contextos diferentes. O 'se' é pronome reflexivo ou reciprocal - é o que usas quando a ação volta para quem faz. Tipo "ele se machucou" (ele machucou a si próprio), "ela se penteou" (ela penteou a si própria), "eles se beijaram" (um beijou o outro). Aqui o 'se' é sempre a forma átona, ou seja, fica junto ao verbo sem preposição.
Já o 'si' é pronome tónico que aparece depois de preposição. Então é "ele falou para si" (para si próprio), "ela comprou isto para si", "ele trancou-se em si mesmo". A grande diferença: 'se' vem sem preposição e colado ao verbo; 'si' vem sempre com preposição (para, de, em, com, por, etc.). Nunca dizes "ele para se machucou" - isso fica esquisito. É "ele se machucou" ou "ele falou para si próprio" se quiseres ser claro.
Uma dica: se há preposição, é 'si'. Se não há preposição e o verbo é reflexivo, é 'se'. Aliás, quando tens dúvida mesmo, pensa em "para si próprio" ou "a si próprio" - o 'si' nunca aparece sem aquela ajuda de preposição ou da palavra "próprio". O 'se' é a forma rápida, a que coloca antes do verbo ou logo depois, conforme a estrutura da frase.