In this case it would not be expected to find substantive differences between the 'NoCor' model and the 'WithCor' model that you have specified. This is because 'Size' is a factor, not a numeric covariate, and what changes between the two models is that instead of the random effects being referenced to the intercept (base level) the random effects are set as stand alone. You can see when you contrast them with ANOVA that there is no difference in AIC, BIC and logLik and no differences in the degrees of freedom (both models have the same number of parameters).
I've found that it might be better to create dummy variables if you want to estimate a variance component for each level of a factor, without including correlations. Something like:
rt$Size1<- ifelse(rt$Size == "small", 1, 0)
rt$Size2<- ifelse(rt$Size == "med", 1, 0)
rt$Size3<- ifelse(rt$Size == "large", 1, 0)
NoCor2 <- lmer(RT ~ Size + (0+Size1|ID) + (0+Size2|ID) + (0+Size3|ID), data=rt)
You might also want to try the slightly simpler model:
NoCorHom <- lmer(RT ~ Size + (1|ID) + (1|ID:Size), data=rt)
You can see from the model summary that this fits a single variance for the size factor, equivalent to assuming sphericity and homogeneity (just like a regular repeated measures ANOVA).
If Size was numeric then you would be looking at something like the below to compare the correlation parameter:
NoCor3 <- lmer(RT ~ Size + (1|ID) + (0+Size|ID), data=rt)
#vs
Cor <- lmer(RT ~ Size + (1+Size|ID), data=rt)