The usual explanation for the Indian Monsoon that I read everywhere is that it is generated by winds from the Arabic Sea, moving to India mainland because of the low pressure there. These winds are stopped by the Himalayan mountains, the air rises and cools down, giving heavy rains. But if this is true I would expect rains starting next to the Himalayas, and then eventually travel south to complete a cycle. Why is the monsoon starting in the south instead? The Himalayas are clearly a barrier, and that's why in Tibet they don't experience the monsoon, but to me it doesn't make sense that they are the reason for the south-west monsoon, I would say more the Western Ghats.
Summarizing what I wrote in the comments
1) The monsoon does not start off in the Arabian Sea. There is actually a cross equatorial gradient that drives winds from the Southern Indian Ocean into the Northern Indian Ocean and then into the Arabian Sea.
2) There is also a second branch of the Indian monsoonal winds and that is the Bay of Bengal branch. This branch also receives winds from the Southern Indian Ocean. This branch ends up contributing easterlies and south easterlies to the Indian monsoon.
3) The crucial aspect that you left out in the question is the role of the Monsoon trough. The monsoon is not just made of winds alone converging rather it is the north to south movement and sometimes south to north movement of the monsoon trough along the Indian subcontinent that researchers and forecasters track. Why is that ? It is because systems form within the monsoon trough. What governs the movement of the monsoon trough up and down the Indian subcontinent ? Well that is a topic beyond the scope of this question.
4) So the monsoon trough includes westerly winds in the equatorward section and in the poleward section you have trade winds. The Himalayan branch from that definition contains easterly winds and not westerly winds from the Arabian Sea.Actually Arabian Sea winds only have a secondary role in providing moisture for systems to form in the Himalayan side.
5) Finally the Indian Himalayas only receive rainfall when the monsoon trough is located along those latitudes. This condition is known as a "break monsoon" condition and it happens when sub tropical westerlies are present aloft. This usually happens after the monsoon has provided rain to the southern parts of the country including the western ghats.
I would recommend going through this free e-book - sw monsoon e-book for a thorough description of what I have mentioned above.