The difference between these two pronunciations comes down to nationality - "skedule" is the US pronunciation and "shedule" is usual in British English. But why should there be this difference, and which one is "correct"? If we look back at the word's etymology, we find the surprising answer that neither represents the word's earliest pronunciation in English.
The word schedule was borrowed from the Old French word cedule in the 15th century; its earliest uses were spelled cedule or sedule, indicating that it was pronounced "sedule" as in French. The spellings scedule and schedule began to appear in the 16th century, in imitation of the spelling of Latin schedula 'slip of paper'. By the middle of the 17th century schedule had become established as the standard spelling, although it continued to be pronounced "sedule" up to the 19th century. In the 19th century the "shedule" pronunciation was adopted, although some dictionaries noted that the word's ultimate origins in the Greek word skhedē 'strip of papyrus' would imply a "skedule" pronunciation. This was the pronunciation preferred by Noah Webster in his American Dictionary of the English Language (1828), who thought it should follow words like scheme; the authority of Webster's Dictionary led to the widespread adoption of "skedule" in US usage.