In admin > Modules > ckeditor > wbconfig > wb_ckconfig.js
Around line 187 it starts with:
/* Protect PHP code tags (<?...?>) so CKEditor will not break them when switching from Source to WYSIWYG.
* Uncommenting this line doesn't mean the user will not be able to type PHP code in the source.
* This kind of prevention must be done in the server side, so just leave this line as is. */
config.protectedSource.push(/<\?[\s\S]*?\?>/g); // PHP Code
// config.protectedSource.push(/\[\[[\s\S]*?\]\]/g); // droplets
// config.protectedSource.push( /<i[\s\S]*?\>/g ); //allows beginning <i> tag
// config.protectedSource.push( /<\/i[\s\S]*?\>/g ); //allows ending </i> tag
// config.protectedSource.push( /<span[\s\S]*?\>/g ); //allows beginning <span> tag
// config.protectedSource.push( /<\/span[\s\S]*?\>/g ); //allows ending </span> tag
//disable ckes Advanced Content Filter (ACF) to avoid wblinks to be filtered?
config.allowedContent = true;
Commented out the <i> doesn't work. Your solution neither and my first aproach neither too.
refreshed mods, cleared browser cache and logged in again in the backend. Tried double quotes, single quotes and html space.
Like you said, it seems that looks like it's overruled by something.